VirtualEnv + Apt + Python3 问题

VirtualEnv + Apt + Python3 问题

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

谢谢你们的帮助!

相关内容