VirtualEnv + Apt + Python3 问题
在 14.04 上,我在尝试导入模块时遇到了一个有趣的问题。我已经python3
安装python3-apt
了,我可以使用以下命令验证这一点:
chalbersma@j2test:~$ python3
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import apt_pkg
>>>
这太棒了!这就是我开发应用程序的方式。现在我继续,我想创建一个虚拟环境,这样我就可以添加一些模块而不会弄乱整个系统。
mkdir test
virtualenv -p python3 ./test
<stuff>
chalbersma@j2test:~$ source ./test/bin/activate
(test)chalbersma@j2test:~$
现在我进入了测试市场。我希望我的导入能够同时出现在两个版本中,因此当我尝试使用 apt 时
(test)chalbersma@j2test:~$ python3
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import apt_pkg
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'apt_pkg'
>>>
我还尝试使用 pip 安装它pip install apt
,但pip install apt_pkg
都不起作用。这种功能似乎适用于其他模块。我错过了什么?
答案1
找到答案这里。如果要使其工作,您需要--system-site-packages
在创建虚拟环境时使用该选项。因此,在我的示例中,正确的做法是
virtualenv --system-site-packages -p python3 ./test
谢谢你们的帮助!