समस्या के मूल कि shebangs में रिक्त स्थान ऐसा है, तो एक निष्पादन करने के लिए अतिरिक्त तर्क की आपूर्ति के रूप में व्याख्या कर रहे हैं C:\Program Files\Python\python.exe
के रूप में देखा जाता है C:\Program
को देखते हुए Files\Python\python.exe
एक तर्क के रूप।
इसके लिए सबसे अच्छा समाधान है, क्योंकि विंडोज $HOME
निर्देशिका Program Files
और अन्य स्थानों में रिक्त स्थान और भले ही यह वास्तव में cmd.exe और पॉवर्सशेल और अन्य उपकरणों में चीजों को तोड़ सकता है, है:
पायथन को स्थापित करें C:\Python
और उस C:\Python
फ़ोल्डर को जोड़ें जहां python.exe
रहता है और Scripts
निर्देशिका जो उसके अंदर रहता है वह PATH
सिस्टम या उपयोगकर्ता स्तर पर आपके पर्यावरण चर पर है।
आप सह-अस्तित्व के लिए पायथन 2.7.x और 3.x की जरूरत है, उन्हें में स्थापित C:\Python27
और C:\Python36
और C:\Python37
और नाम बदलने python.exe
के लिए python2.exe
, python36.exe
, python37.exe
, आदि और उन फ़ोल्डर और उनके से प्रत्येक को जोड़ने Scripts
में फ़ोल्डर्स PATH
। आप यह निर्धारित करना चाहते हैं कि पायथन 3 संस्करणों में से कौन सा आप "डिफ़ॉल्ट" होना चाहते हैं और उस फ़ोल्डर में एक कॉपी भी बनाते हैं जो python3.exe
किसी भी स्क्रिप्ट का उपयोग करने के लिए संभालता है !#/usr/bin/env python3
।
यदि आपकी उपयोगकर्ता होम निर्देशिका में जगह है, तो आप pip install --user somepackage
सिंटैक्स का उपयोग करने पर भी समस्याओं का अनुभव कर सकते हैं । --user
अपने घर निर्देशिका में चूक, और अंतरिक्ष के साथ-साथ इस मामले में चीजों को ट्रिप होगा। वर्कअराउंड का वर्णन यहां किया गया है, लेकिन अपने पर्यावरण के लिए PYTHONUSERBASE निर्यात करने के लिए उबलता है।
export PYTHONUSERBASE=/myappenv
pip install --user SomePackage
या विंडोज में (पॉवर्सशेल):
$env:PYTHONUSERBASE='C:\PythonPkgs'
pip install --user SomePackage
env
, जैसा कि पूछने वाला कर रहा है।