यदि आप किसी मशीन पर मॉड्यूल इंस्टॉल नहीं कर सकते (पर्याप्त अनुमति न होने के कारण), तो आप या तो `virtualenv` का उपयोग कर सकते हैं या मॉड्यूल फ़ाइलों को किसी अन्य डायरेक्टरी में सेव करके निम्नलिखित कोड का उपयोग करके पायथन को दिए गए डायरेक्टरी में मॉड्यूल खोजने की अनुमति दे सकते हैं:
विधि 1: sys.path संशोधित करें
>>> import os, sys
>>> file_path = 'AdditionalModules/'
>>> sys.path.append(os.path.dirname(file_path))
>>> # अब पायथन मॉड्यूल इम्पोर्ट करने के लिए AdditionalModules फ़ोल्डर भी खोजेगा क्योंकि हमने इसे PYTHONPATH पर सेट किया है।
विधि 2: virtualenv का उपयोग (अनुशंसित)
आप एक आइसोलेटेड स्थानीय पायथन वातावरण बनाने के लिए `virtualenv` का उपयोग कर सकते हैं। संबोधित की जा रही मूल समस्या निर्भरता और संस्करणों की है, और अप्रत्यक्ष रूप से अनुमतियों की। कल्पना करें कि आपके पास एक एप्लिकेशन है जिसे `LibFoo` के संस्करण 1 की आवश्यकता है, लेकिन दूसरे एप्लिकेशन को संस्करण 2 की आवश्यकता है। आप दोनों एप्लिकेशन का उपयोग कैसे कर सकते हैं? यदि आप सब कुछ `/usr/lib/python2.7/site-packages` (या आपके प्लेटफॉर्म का मानक स्थान) में इंस्टॉल करते हैं, तो आप अनजाने में एक एप्लिकेशन को अपग्रेड करने की स्थिति में आसानी से पहुंच सकते हैं जिसे अपग्रेड नहीं किया जाना चाहिए। यह हमारे उपयोग के मामले में भी उपयोग किया जा सकता है जहां हम मशीन पर पैकेज इंस्टॉल नहीं कर सकते क्योंकि हमारे पास अनुमतियां नहीं हैं। अधिक जानकारी के लिए वर्चुअल एनवी डॉक्स पढ़ें: https://virtualenv.pypa.io/en/stable/
virtualenv सेटअप चरण
# 1. वर्चुअल एनवायरनमेंट बनाएं
python -m venv myenv # पायथन 3.3+ (बिल्ट-इन)
# या
virtualenv myenv # यदि virtualenv इंस्टॉल है
# 2. सक्रिय करें
# Linux/macOS:
source myenv/bin/activate
# Windows CMD:
myenv\Scripts\activate
# Windows PowerShell:
myenv\Scripts\Activate.ps1
# 3. पैकेज इंस्टॉल करें (रूट की आवश्यकता नहीं)
pip install package_name
# 4. निष्क्रिय करें
deactivate
विधि 3: pip install --user
pip install --user package_name
यह पैकेज को `~/.local/lib/pythonX.Y/site-packages/` (लिनक्स/मैक) या `%APPDATA%\Python\PythonXX\site-packages` (विंडोज) में इंस्टॉल करता है।
विधि 4: PYTHONPATH पर्यावरण वेरिएबल
# Linux/macOS
export PYTHONPATH=/home/user/my_modules:$PYTHONPATH
# Windows
set PYTHONPATH=C:\Users\user\my_modules;%PYTHONPATH%
विधि 5: पिपएनवी (Pipenv) / पॉएट्री (Poetry)
# Pipenv
pip install --user pipenv
pipenv install package_name
pipenv shell
# Poetry
curl -sSL https://install.python-poetry.org | python3 -
poetry init
poetry add package_name
तुलना
| विधि | आइसोलेशन | उपयोग में आसानी | पोर्टेबिलिटी |
|---|---|---|---|
| virtualenv/venv | उच्च | मध्यम | उच्च |
| pip install --user | निम्न | आसान | मध्यम |
| PYTHONPATH | कोई नहीं | आसान | निम्न |
| Pipenv/Poetry | उच्च | मध्यम | उच्च |
अनुशंसा
वर्चुअल एनवायरनमेंट (venv/virtualenv) अधिकांश मामलों के लिए सर्वोत्तम विकल्प है। यह पूर्ण आइसोलेशन, आसान सफाई, और प्रोजेक्ट पोर्टेबिलिटी प्रदान करता है।