我将ubuntu 14.04LTS作为虚拟机安装,它已经在机器上安装了python2.7和python3.4。
之后我使用命令sudo apt-get install python-twisted
来安装扭曲的框架,我可以在python 2.7中使用import twisted
但我不能在python 3.4中使用相同的命令import twisted
。它显示
>>> import twisted
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'twisted'
我尝试了很多方法来安装扭曲的,比如
sudo apt-get install python-setuptools
Sudo apt-get install python-dev
Sudo easy_install twisted
或
sudo pip install twisted
甚至下载包tar xjf Twisted-13.1.0.tar.bz2
和tar xzf zope.interface-3.6.1.tar.gz
而不是运行python setup.py install
然而,不幸的是,这些都行不通。 有谁知道如何解决这个问题?谢谢!
答案 0 :(得分:0)
这是因为所有这些库都安装到Python 2.7的库中。
要安装到Python 3,请使用pip3
,而不是pip
:
sudo pip3 install twisted
要了解发生这种情况的原因,请注意Ubuntu符号链接python
python2.7
可执行文件和python3
到python3.4
。
根据我的理解,apt-get
上的这些包在安装过程中内部调用python
而不是python3
。因此,在这些情况下,为什么没有安装到Python 3.4。
安全的替代方法是始终使用pip
进行Python安装。 pip3
符号链接到只为Python 3.4提供服务的pip
版本,所以总是为Python 3包调用它。
更好的解决方案是使用virtualenv将不同的Python和pip版本相互隔离。这样,当您进入虚拟环境时,可以使用pip
而无需担心符号链接版本。