1. 程式人生 > >使用Anaconda的python安裝虛擬環境出現錯誤

使用Anaconda的python安裝虛擬環境出現錯誤

        首先,你需要在終端命令視窗中執行
pip install --user virtualenv

        然後執行程式碼建立虛擬環境目錄learning_log

python -m venv learning_log 

之後報錯:Error: Command '['C:\\Users\\shui02\\learning_log\\Scripts\\python.exe', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1。

        在建立python虛擬環境的時候,如果使用的是Anaconda中整合的python -m venv learning_log就會出現不能安裝pip的錯誤,原因是Anaconda沒有ensurepip。

        解決辦法是使用python -m venv --without-pip learning_log建立沒有pip的虛擬環境,然後啟動虛擬環境安裝pip即可。但是經過實測,不安裝pip也可使用pip命令。

        虛擬環境learning_log建立後,就可cd到該目錄下執行(windows系統):

Scripts\activate

來啟用這個虛擬環境。之後便可進行如安裝Django等操作了。

---------------------------------------------------------------------------------------

        本以為虛擬環境learning_log建立好後,就萬事大吉了。沒想到當我安裝好Django後,執行命令建立

django-admin.py startproject learning_log .

新專案learning_log後,再執行建立資料庫命令:

python manage.py migrate

結果他告訴我,"Couldn't import Django. Are you sure it's installed and" ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment"

心中波濤洶湧,由於虛擬環境是active,於是添環境變數,然而並沒用。根據網上經驗又解除安裝django,又安裝django,甚至重新安裝了virturalenv,得到的結果還是以前的配方,報錯。

        最後我再次重建虛擬環境,使用命令列:python -m venv --without-pip --system-site-packages learning_log,之後建立專案就ok了。新增的這行命令的意思是允許虛擬環境使用系統安裝的python包。