我正在使用一个名为TheCannon的科学软件包。 它全部用Python编写,我用pip安装它。
直到两天前,它完美无缺。 今天,当我尝试使用它时,发生了这种情况:
Traceback (most recent call last):
File "test2.py", line 4, in <module>
from TheCannon import dataset
ImportError: No module named TheCannon
我已经卸载并再次安装,没有任何改变。 有谁知道为什么python不再找到包以及如何解决它? 谢谢。
答案 0 :(得分:0)
要解决此问题,这是路径问题。
在Ubuntu上,这很容易修复。要找出当前Python可执行文件的路径,请执行以下操作:
$ which python
# this will probably give you /usr/bin/python or /usr/local/bin/python by default, in your case, probably something quite different
/usr/bin/python
然后,您需要将正确的Python可执行文件的链接更改为此位置。
# move to symlink to another file
$ sudo mv /usr/bin/python /usr/bin/python_bak
# then relink the default Python on Ubuntu to the original
$ sudo ln -s /usr/bin/python2.7 /usr/bin/python
Ubuntu中系统的默认Python可执行文件位于/usr/bin/python2.7,因此最好将此符号链接到“python”给出的路径。 (另外,#我的意思是评论,而不是超级用户)。
如果您需要撤消此操作,只需通过以下方式撤消移动的符号链接:
$ sudo mv /usr/local/bin/python_bak /usr/local/bin/python
另外......不要将Python3作为Ubuntu上的默认Python链接,就像你不会将Python2作为Arch上的默认安装一样。