Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

एक ही नाम के दो पायथन मॉड्यूल कैसे इंस्टॉल करें?

यह पिप (pip) के साथ संभव नहीं है। PyPI पर सभी पैकेजों के अद्वितीय नाम होते हैं। पैकेज अक्सर एक-दूसरे की आवश्यकता करते हैं और उन पर निर्भर करते हैं, और मानते हैं कि नाम नहीं बदलेगा। यहां तक कि अगर आप कोड को पायथन पथ पर रखने का प्रबंधन करते हैं, तो मॉड्यूल इम्पोर्ट करते समय, पायथन `sys.path` में पथों को क्रम से खोजता है और पहले मिलान पर रुक जाता है। इसलिए जो भी मॉड्यूल यह पहले ढूंढता है, यह वहीं रुक जाएगा।

सर्वोत्तम समाधान

आपका सबसे अच्छा विकल्प है लाइब्रेरी से सभी कोड को अपने कोडबेस में कॉपी करना, उनमें से किसी एक का मॉड्यूल नाम बदलना, और फिर इसे इम्पोर्ट करना।

अलग-अलग पैकेज से समान नाम के मॉड्यूल इम्पोर्ट करना

यदि आप अलग-अलग पैकेज से समान नाम के मॉड्यूल इम्पोर्ट कर रहे हैं, तो आप इसे इस प्रकार कर सकते हैं:

>> from foo import bar as first_bar
>>> from baz import bar as second_bar

अन्य विकल्प

1. नेमस्पेस पैकेज का उपयोग करें


# पैकेज संरचना
myproject/
  foo/
    __init__.py
    bar.py
  baz/
    __init__.py
    bar.py

# इम्पोर्ट
from myproject.foo import bar as foo_bar
from myproject.baz import bar as baz_bar

2. इम्पोर्ट एलियास (पायथन 3.3+)


import foo.bar as foo_bar
import baz.bar as baz_bar

3. वर्चुअल एनवायरनमेंट अलग करें

प्रत्येक प्रोजेक्ट के लिए अलग वर्चुअल एनवायरनमेंट बनाएं ताकि विरोधाभासी निर्भरताएं अलग रहें।

4. पिपएनवी / पॉएट्री (Pipenv / Poetry)


# Pipfile
[packages]
foo-bar = {path = "./foo", editable = true}
baz-bar = {path = "./baz", editable = true}

सारांश

दृष्टिकोणपक्षविपक्ष
कोड कॉपी करें और नाम बदलेंसरल, पूर्ण नियंत्रणरखरखाव बोझ
इम्पोर्ट एलियास (`as`)मानक, पठनीयपैकेज नाम अलग होने चाहिए
नेमस्पेस पैकेजसंगठित संरचनासेटअप जटिलता
अलग वर्चुअलएनवीपूर्ण आइसोलेशनसंसाधन उपयोग
  1. Python PIP को Python पैकेज के लिए कैसे इंस्टॉल करें Python PIP को Python पैकेज के लिए कैसे इंस्टॉल करें

    Python केवल शुरुआती के लिए एक प्रोग्रामिंग भाषा नहीं है—यह एक शक्तिशाली और पूर्ण विकसित भाषा है, जिसके चारों ओर भारी संख्या में थर्ड-पार्टी पैकेज और लाइब्रेरी बनाई गई हैं। सब कुछ खुद कोड करने के बजाय, आप इन थर्ड-पार्टी पैकेज को तैनात कर सकते हैं और उन्हें अपने कोडिंग प्रोजेक्ट्स के हिस्से के रूप में

  1. - Python Import Statement के साथ Multiple Modules का उपयोग कैसे करें?

    Single Import Statement में Multiple Modules Single Import Statement में Multiple Modules Import करने के लिए, बस Module Names को Commas से Separate करें। उदाहरण >>> import math, sys, os Module Aliases के साथ यदि आप Modules को Import करने वाले Name को Change करना चाहते हैं, तो प्रत्येक Mo

  1. - पायथन में फ्लोट को दो दशमलव स्थानों के साथ कैसे प्रदर्शित करें?

    आप फ्लोटिंग पॉइंट नंबर को पायथन में एक निश्चित चौड़ाई में फॉर्मेट करने के लिए स्ट्रिंग फॉर्मेटिंग का उपयोग कर सकते हैं। उदाहरण के लिए, यदि आप दशमलव बिंदुओं को 12 कैरेक्टर की चौड़ाई के साथ संरेखित करना चाहते हैं और दशमलव के दाईं ओर 2 अंक चाहते हैं, तो आप निम्न का उपयोग कर सकते हैं: >>> x = 1