当尝试在ubuntu上使用带有python 3的venv创建virtulenv时,它不会创建激活脚本。它会以错误1退出。
关注SO上的文档和其他帖子,例如https://stackoverflow.com/a/19848770
我尝试过两种不同的创作方式。
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?
如果我按照以下方式进行,stil没有成功,不确定问题是什么?
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
答案 0 :(得分:79)
看起来您正在使用Ubuntu 14.04
。它附带broken pyvenv
。使用Python 3
<强> 1。创建没有点的venv
python3 -m venv --without-pip test4
或
pyvenv-3.4 --without-pip test4
<强> 2。获取你的环境
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
答案 1 :(得分:9)
如果您使用 Anaconda 或 Miniconda ,此解决方案可能有所帮助:
Conda manages python itself as a package,这样conda update python就可以了,而pip只管理Python包。 Conda可以在Anaconda和Miniconda中使用(只需使用Python和conda即可轻松下载)。
所以,这个命令会有所帮助:
conda update python
感谢您的关注,祝您度过愉快的一天!
答案 2 :(得分:4)
命令:
python3 -m virtualenv env
对我有用,而:
python3 -m venv env
没有。
答案 3 :(得分:1)
这对我有用:
python3 -m venv --without-pip test4
在终端输入后,&#34; test4&#34; venv被创造了。并且“激活”#39;脚本也是在&#39; bin&#39;中创建的。 。目录
对于使用python3的任何人,如果遇到问题,只需替换你要创建的目录的名称&#34; test4&#34; (或稍后重命名)。
应该这样做。
答案 4 :(得分:0)
sudo python3 -m venv venv/
如有疑问,请始终以超级用户身份尝试