[英]mkvirtualenv with --python flag uses wrong python version
我正在尝试制作python 2.7环境,但是当我运行时
$ mkvirtualenv --python=python2.7 venv
$ python
Python 3.6.5 (default, Jun 17 2018, 12:13:06)
[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
我安装了python3.6。 知道这里有什么吗?
这是带有绝对路径和详细标志的输出
Jeff$ mkvirtualenv -v --python=/usr/bin/python2.7 neovim2
Running virtualenv with interpreter /usr/bin/python2.7
Creating /Users/Jeff/.virtualenvs/neovim2/lib/python2.7
Symlinking Python bootstrap modules
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/lib-dynload
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/config
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/os.py
Ignoring built-in bootstrap module: posix
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/posixpath.py
Cannot import bootstrap module: nt
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/ntpath.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/genericpath.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/fnmatch.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/locale.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/encodings
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/codecs.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/stat.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/UserDict.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/copy_reg.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/types.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/re.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/sre.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/sre_parse.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/sre_constants.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/sre_compile.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/warnings.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/linecache.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/_abcoll.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/abc.py
Symlinking /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/_weakrefset.py
Creating /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/site-packages
Writing /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/site.py
Writing /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/orig-prefix.txt
Writing /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/no-global-site-packages.txt
Creating parent directories for /Users/Jeff/.virtualenvs/neovim2/include
Symlinking /Users/Jeff/.virtualenvs/neovim2/include/python2.7
Creating /Users/Jeff/.virtualenvs/neovim2/bin
New python executable in /Users/Jeff/.virtualenvs/neovim2/bin/python
Changed mode of /Users/Jeff/.virtualenvs/neovim2/bin/python to 0755
Symlinking /Users/Jeff/.virtualenvs/neovim2/.Python
Testing executable with /Users/Jeff/.virtualenvs/neovim2/bin/python -c "import sys;out=sys.stdout;getattr(out, "buffer", out).write(sys.prefix.encode("utf-8"))"
Got sys.prefix result: u'/Users/Jeff/.virtualenvs/neovim2'
Creating /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/distutils
Writing /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/distutils/__init__.py
Writing /Users/Jeff/.virtualenvs/neovim2/lib/python2.7/distutils/distutils.cfg
Installing setuptools, pip, wheel...
Looking in links: /usr/local/lib/python3.6/site-packages, /usr/local/lib/python3.6/site-packages/virtualenv_support
Collecting setuptools
Using cached https://files.pythonhosted.org/packages/7f/e1/820d941153923aac1d49d7fc37e17b6e73bfbd2904959fffbad77900cf92/setuptools-39.2.0-py2.py3-none-any.whl
Collecting pip
Collecting wheel
Installing collected packages: setuptools, pip, wheel
Successfully installed pip-10.0.1 setuptools-39.2.0 wheel-0.31.1
...Installing setuptools, pip, wheel...done.
Writing /Users/Jeff/.virtualenvs/neovim2/bin/activate
Writing /Users/Jeff/.virtualenvs/neovim2/bin/activate.fish
Writing /Users/Jeff/.virtualenvs/neovim2/bin/activate_this.py
Writing /Users/Jeff/.virtualenvs/neovim2/bin/activate.csh
Writing /Users/Jeff/.virtualenvs/neovim2/bin/python-config
Changed mode of /Users/Jeff/.virtualenvs/neovim2/bin/python-config to 0755
virtualenvwrapper.user_scripts creating /Users/Jeff/.virtualenvs/neovim2/bin/predeactivate
virtualenvwrapper.user_scripts creating /Users/Jeff/.virtualenvs/neovim2/bin/postdeactivate
virtualenvwrapper.user_scripts creating /Users/Jeff/.virtualenvs/neovim2/bin/preactivate
virtualenvwrapper.user_scripts creating /Users/Jeff/.virtualenvs/neovim2/bin/postactivate
virtualenvwrapper.user_scripts creating /Users/Jeff/.virtualenvs/neovim2/bin/get_env_details
neovim2 Jeff $ python
Python 3.6.5 (default, Jun 17 2018, 12:13:06)
[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
您的path
变量正在拾取另一个python。
尝试
which python
和
path
帮助您执行正确的python
--python
不使用PATH
变量。 要么使用默认的Python( /usr/bin/python
指向的那个),要么必须指定可执行文件的完整路径。 但是,通过调用,您应该会得到“可执行xxx(来自--python = xxx)不存在”,例如:
$ mkvirtualenv --python=python3 test
The executable /home/jazg/python3 (from --python=/home/jazg/python3) does not exist
但:
$ mkvirtualenv --python=/usr/bin/python3 test
Already using interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in /home/jazg/v/test/bin/python3
Also creating executable in /home/jazg/v/test/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.
$ python --version
Python 3.5.2
创建venv之后,您没有执行source venv/bin/activate
。 试试看;)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.