簡體   English   中英

venv 不創建激活腳本 python3

[英]venv doesn't create activate script python3

當嘗試在 ubuntu 上使用 venv 和 python 3 創建 virtulenv 時,它不會創建激活腳本。 它以錯誤 1 ​​連續退出。

關注 SO 上的文檔和其他帖子,例如https://stackoverflow.com/a/19848770

我試過用 2 種不同的方式創建它。

sayth@sayth-TravelMate-5740G:~/scripts$ python3 -m venv test4
Error: Command '['/home/sayth/scripts/test4/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1
sayth@sayth-TravelMate-5740G:~/scripts$ source test4/bin/activate
bash: test4/bin/activate: No such file or directory
sayth@sayth-TravelMate-5740G:~/scripts$ ls test4/bin/
python  python3

或者

sayth@sayth-TravelMate-5740G:~/scripts$ pyvenv-3.4 test5
Error: Command '['/home/sayth/scripts/test5/bin/python3.4', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1
sayth@sayth-TravelMate-5740G:~/scripts$ ls test5/bin/
python  python3  python3.4

我怎樣才能讓它完全創建一個venv?

如果我按照下面的方法做仍然沒有成功不確定問題是什么?

sayth@sayth-TravelMate-5740G:~/scripts$ python3 -Im venv panda3
Error: Command '['/home/sayth/scripts/panda3/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1
sayth@sayth-TravelMate-5740G:~/scripts$ python3 -m venv panda4
Error: Command '['/home/sayth/scripts/panda4/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1

看起來您正在使用Ubuntu 14.04 它附帶了一個損壞的pyvenv 使用Python 3創建 venv 有一個簡單的解決方法

1. 不用pip創建venv

python3 -m venv --without-pip test4

或者

pyvenv-3.4 --without-pip test4

2. 在你的環境中獲取 pip

source test4/bin/activate
curl https://bootstrap.pypa.io/get-pip.py | python
deactivate
source test4/bin/activate

或者

pyvenv-3.4 --without-pip myvenv
source ./myvenv/bin/activate
wget https://pypi.python.org/packages/source/s/setuptools/setuptools-3.4.4.tar.gz
tar -vzxf setuptools-3.4.4.tar.gz
cd setuptools-3.4.4
python setup.py install
cd ..
wget https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz
tar -vzxf pip-1.5.6.tar.gz
cd pip-1.5.6
python setup.py install
cd ..
deactivate
source ./myvenv/bin/activate

來源:黑客新聞AskUbuntu

蟒蛇卷入。

如果您使用的是AnacondaMiniconda,此解決方案可能會有所幫助:

Conda 將python 本身作為一個包來管理,這樣conda 更新python 是可能的,而pip 只管理Python 包。 Conda 在 Anaconda 和 Miniconda 中可用(只需 Python 和 conda 即可輕松安裝下載)。

所以,這個命令會有所幫助:

conda update python

對我來說非常令人不安,但好吧,在終端窗口中將手放在鍵盤上:(單擊此處,查看圖片)

感謝您的關注,祝您有美好的一天!

命令:

python3 -m virtualenv env

對我有用,而:

python3 -m venv env

才不是。

這對我有用:

python3 -m venv --without-pip test4

一旦我在終端中輸入,就創建了“test4”venv。 並且在 'bin' 目錄中也創建了 'activate' 腳本。

對於任何使用 python3 的人來說,遇到這個問題,只需將要創建的目錄的名稱替換為“test4”(或稍后重命名)。

那應該這樣做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM