पायथन वर्चुअल वातावरण प्रोजेक्ट निर्भरता को अलग करता है, लेकिन उन्हें सक्रिय करने से कई डेवलपर्स को परेशानी होती है – कमांड ओएस और शेल के अनुसार भिन्न होता है, पावरशेल डिफ़ॉल्ट रूप से स्क्रिप्ट को ब्लॉक करता है, और गलत वातावरण को सक्रिय करना आसान है। यहां प्रत्येक सक्रियण समस्या को ठीक करने का तरीका बताया गया है।
📋 Table of Contents
- एक आभासी वातावरण बनाना
- ओएस/शेल द्वारा सही सक्रियण आदेश
- समाधान 1: macOS/Linux "कमांड नहीं मिला" या कुछ नहीं होता
- फिक्स 2: पॉवरशेल "लोड नहीं किया जा सकता क्योंकि रनिंग स्क्रिप्ट अक्षम है"
- समाधान 3: सत्यापित करें कि आप वास्तव में सक्रिय हैं
- समाधान 4: वेनव फ़ोल्डर गुम या टूटा हुआ
- फिक्स 5: वेनव में गलत पायथन संस्करण
- निष्क्रिय करना और स्विच करना
- आधुनिक विकल्प
- अक्सर पूछे जाने वाले प्रश्न
- निष्कर्ष
एक आभासी वातावरण बनाना
# Create a venv (do this in your project directory)
python -m venv venv
# On some systems, use python3 explicitly
python3 -m venv venv
# This creates a 'venv' folder with an isolated Python environment
ओएस/शेल द्वारा सही सक्रियण आदेश
| ओएस/शैल | सक्रियण आदेश |
|---|---|
| macOS/Linux (bash/zsh) | source venv/bin/activate |
| विंडोज़ (कमांड प्रॉम्प्ट) | venv\Scripts\activate.bat |
| विंडोज़ (पावरशेल) | venv\Scripts\Activate.ps1 |
| विंडोज़ (गिट बैश) | source venv/Scripts/activate |
| मछली का खोल | source venv/bin/activate.fish |
अपने शेल के लिए गलत कमांड का उपयोग करना सक्रियण “काम न करने” का सबसे आम कारण है।
समाधान 1: macOS/Linux “कमांड नहीं मिला” या कुछ नहीं होता
# Use 'source' (not just running the script)
source venv/bin/activate
# 🐛 This does NOT work (runs in a subshell that immediately exits):
./venv/bin/activate
# ✅ You MUST use source (or the . shortcut):
source venv/bin/activate
. venv/bin/activate # . is shorthand for source
# After activation, your prompt shows (venv):
# (venv) user@machine:~/project$
फिक्स 2: पॉवरशेल “लोड नहीं किया जा सकता क्योंकि रनिंग स्क्रिप्ट अक्षम है”
# PowerShell blocks script execution by default. The error:
# venv\Scripts\Activate.ps1 cannot be loaded because running
# scripts is disabled on this system.
# ✅ Allow scripts for your user (safe, common fix)
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# Then activate normally
venv\Scripts\Activate.ps1
# ✅ Or bypass for just this session
powershell -ExecutionPolicy Bypass
venv\Scripts\Activate.ps1
समाधान 3: सत्यापित करें कि आप वास्तव में सक्रिय हैं
# Check which Python is being used
which python # macOS/Linux
where python # Windows
# Should point INSIDE your venv, e.g., /project/venv/bin/python
# Check the Python location from within Python
python -c "import sys; print(sys.prefix)"
# Should show your venv path, not the system Python path
# The (venv) prefix in your prompt also confirms activation:
# (venv) $
समाधान 4: वेनव फ़ोल्डर गुम या टूटा हुआ
# If activation fails because the venv doesn't exist or is broken,
# recreate it:
rm -rf venv # remove broken venv (macOS/Linux)
# rmdir /s venv # Windows Command Prompt
python -m venv venv # create fresh
source venv/bin/activate # activate
# Reinstall your dependencies
pip install -r requirements.txt
फिक्स 5: वेनव में गलत पायथन संस्करण
# Create a venv with a specific Python version
python3.12 -m venv venv # uses Python 3.12 specifically
# Verify the version inside the venv
source venv/bin/activate
python --version # should show 3.12.x
# If you have multiple Python versions, be explicit about which one
निष्क्रिय करना और स्विच करना
# Deactivate the current environment
deactivate
# The (venv) prefix disappears, returning to system Python
# Common mistake: forgetting to activate, then installing globally
# Always activate BEFORE running pip install for a project
आधुनिक विकल्प
# uv - fast, modern Python package/environment manager (2026)
uv venv # create venv
source .venv/bin/activate # activate
uv pip install requests # install fast
# Poetry - manages venvs automatically
poetry install # creates venv and installs deps
poetry shell # activate the poetry venv
poetry run python script.py # run within the venv without activating
अक्सर पूछे जाने वाले प्रश्न
प्रश्न: ./venv/bin/activate macOS/Linux पर काम क्यों नहीं करता?
उ: स्क्रिप्ट चलाने से सीधे एक सबशेल शुरू होता है जो सक्रिय होता है और तुरंत बाहर निकल जाता है, इसलिए आपके वर्तमान शेल में कुछ भी नहीं बदलता है। आपकोsource venv/bin/activateका उपयोग अवश्य करना चाहिए (या. venv/bin/activate) इसे अपने वर्तमान शेल में चलाने के लिए।
प्रश्न: मैं पॉवरशेल निष्पादन नीति त्रुटि को कैसे ठीक करूं?
ए: भागोSet-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser अपने उपयोगकर्ता के लिए हस्ताक्षरित स्क्रिप्ट की अनुमति देने के लिए। यह सुरक्षित और मानक समाधान है. तब सक्रियण सामान्य रूप से कार्य करता है. वैकल्पिक रूप से, इसे एक सत्र के लिए बायपास करें।
प्रश्न: मुझे कैसे पता चलेगा कि मेरा वेनव सक्रिय है?
उत्तर: आपका संकेत(venv)दिखाता है शुरू में।which pythonके साथ आगे सत्यापित करें (आपके वेनव के अंदर इंगित करना चाहिए) याpython -c "import sys; print(sys.prefix)" (वेनव पथ दिखाना चाहिए, सिस्टम पायथन नहीं)।
प्रश्न: क्या मुझे अपना वेनव फ़ोल्डर Git में जमा करना चाहिए?
ए: नहीं – जोड़ेंvenv/ to .gitignore. वेनव मशीन-विशिष्ट और बड़ा है। इसके बजाय, प्रतिबद्धrequirements.txt (या pyproject.toml) ताकि अन्य लोगpip install -r requirements.txt.
के साथ पर्यावरण को फिर से बना सकें प्रश्न: क्या 2026 में वेनव से बेहतर कोई उपकरण है?
A: uv एक तेज़, आधुनिक विकल्प है जो वातावरण बनाता है और पैकेजों को बहुत तेज़ी से स्थापित करता है। कविता वेनव और निर्भरता को एक साथ प्रबंधित करती है। वेनव बिल्ट-इन और बढ़िया है, लेकिन यूवी और पोएट्री कई वर्कफ़्लो के लिए बेहतर डेवलपर अनुभव प्रदान करते हैं।
निष्कर्ष
आपके ओएस/शेल या पावरशेल के स्क्रिप्ट प्रतिबंधों के लिए गलत कमांड का उपयोग करने के कारण पायथन वर्चुअल वातावरण सक्रियण समस्याएं लगभग हमेशा सामने आती हैं। समाधान: का उपयोग करें MacOS/Linux पर ( के साथ, स्क्रिप्ट को सीधे चलाकर नहीं), सहीsource venv/bin/activate विंडोज़ पर स्क्रिप्ट, और PowerShell कोsourceके साथ ठीक करें ..bat or .ps1की जांच करके सक्रियण सत्यापित करें शीघ्र उपसर्ग और वहSet-ExecutionPolicy RemoteSigned -Scope CurrentUser आपके वेनव के अंदर बिंदु। पिप इंस्टाल चलाने से पहले हमेशा सक्रिय करें, वेनव फ़ोल्डर को गिटिग्नोर करें, और बेहतर अनुभव के लिए यूवी या पोएट्री जैसे आधुनिक टूल पर विचार करें। एक बार जब आप अपने शेल के लिए सही कमांड जान लेते हैं, तो सक्रियण सरल हो जाता है।(venv) आपके वेनव के अंदर बिंदु। पिप इंस्टाल चलाने से पहले हमेशा सक्रिय करें, वेनव फ़ोल्डर को गिटिग्नोर करें, और बेहतर अनुभव के लिए यूवी या पोएट्री जैसे आधुनिक टूल पर विचार करें। एक बार जब आप अपने शेल के लिए सही कमांड जान लेते हैं, तो सक्रियण सरल हो जाता है।which python आपके वेनव के अंदर बिंदु। पिप इंस्टाल चलाने से पहले हमेशा सक्रिय करें, वेनव फ़ोल्डर को गिटिग्नोर करें, और बेहतर अनुभव के लिए यूवी या पोएट्री जैसे आधुनिक टूल पर विचार करें। एक बार जब आप अपने शेल के लिए सही कमांड जान लेते हैं, तो सक्रियण सरल हो जाता है।
🔗 Share this article
✍️ Leave a Comment