Python 带有 Anaconda 和 python.org python 3.5 的 virtualenv

Python virtualenv with Anaconda and python.org python 3.5

我有来自 python.org 的 anaconda Python 3.5 和 Python 3.5(在 windows)

python -V
Python 3.5.1 :: Anaconda 4.0.0 (64-bit)

python3 -V
Python 3.5.1

py -V
Python 2.7.12

我想创建一个只有 python 3.5.1 而不是 anaconda 版本的 virtualenv。

当我运行

python3 c:\Python35\Tools\scripts\pyvenv.py venv

python -V激活环境后仍然显示Python 3.5.1 :: Anaconda 4.0.0 (64-bit)

有没有办法让它使用原生的3.5版本?

您可以在创建 venv 期间使用命令行选项 -p 强制使用特定的解释器。

python3 c:\Python35\Tools\scripts\pyvenv.py -p python3 venv

已编辑:

我糟糕的、错误的虚拟环境。正如我所看到的,您使用标准库中的 venv,并且在虚拟环境创建过程中不可能选择特定的解释器。另一方面,python3 -m venv venv 命令应该为虚拟环境使用 python3 解释器,在您的情况下,虚拟环境是没有 anaconda 的。

已编辑 2:

我刚刚查看了 windows:

C:\Users\usr>where python
C:\Python35\python.exe
C:\Users\usr\Anaconda3\python.exe

C:\Users\usr>C:\Users\usr\Anaconda3\python.exe --version
Python 3.5.2 :: Anaconda 4.1.1 (32-bit)

C:\Users\usr>C:\Users\usr\Anaconda3\python.exe -m venv myanacondavenv

C:\Users\usr>myanacondavenv\Scripts\activate.bat
(myanacondavenv) C:\Users\usr>python --version
Python 3.5.2 :: Anaconda 4.1.1 (32-bit)

(myanacondavenv) C:\Users\usr>deactivate
C:\Users\usr>C:\Python35\python.exe -m venv myvanilaenv

C:\Users\usr>myvanilaenv\Scripts\activate.bat
(myvanilaenv) C:\Users\usr>python --version
Python 3.5.1

(myvanilaenv) C:\Users\usr>deactivate
C:\Users\usr>

Reference