[英]Python 2.7 imports module from wrong location
我在使用Ubuntu 2.04的Python 2.7.6,并且正在尝试导入openpyxl。 我通过sudo pip install openpyxl --upgrade
--upgrade升级到了最新版本,并且pip show openpyxl
提供了以下输出:
pip show openpyxl
---
Name: openpyxl
Version: 2.3.3
Location: /usr/local/lib/python2.7/dist-packages
Requires:
但是,在python中时,我import openpyxl
,似乎是从其他位置加载它: /usr/lib
而不是/usr/local/lib
openpyxl.__version__
'1.7.0'
openpyxl.__file__
'/usr/lib/pymodules/python2.7/openpyxl/__init__.pyc'
我已经将$PYTHONPATH
设置为/usr/local/lib/python2.7/dist-packages
当查看sys.path
时,我得到以下输出:
['', '/usr/local/lib/python2.7/dist-packages',... and 12 other locations]
它似乎首先有我想要的位置。 然而,错误的模块被加载。
编辑:
$PATH
内容:
/misc/software-lin/lmbsoft/build/x86_64-gcc4.8/release/bin:/misc/software-lin/lmbsoft/build/x86_64-gcc4.8/debug/bin:/misc/software-lin/lmbsoft/build/x86_64-gcc4.8/bin:/home/maid/phd/3rdpartySoft/art-2009-03-12/bin:/home/maid/phd/3rdpartySoft/ANTs-1.9.x-Linux/bin:/misc/software-lin/lmbsoft/build/x86_64-gcc4.8/release/bin:/misc/software-lin/lmbsoft/build/x86_64-gcc4.8/debug/bin:/misc/software-lin/lmbsoft/build/x86_64-gcc4.8/bin:/home/maid/phd/3rdpartySoft/art-2009-03-12/bin:/home/maid/phd/3rdpartySoft/ANTs-1.9.x-Linux/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:.:/home/maid/bin:/misc/software-lin/matlabR2015a/bin:/home/maid/phd/3rdpartySoft/nifty_reg-1.3/niftyreg_install/bin:/misc/software-lin/lmbsoft/cudatoolkit-3.2.16-x86_64/cuda/bin:/misc/database/cv2/local/bin:/misc/software-lin/vibez/bin:/usr/lib/jvm/java-6-openjdk/jre/bin:/misc/software-lin/vivi:/home/maid/localsoft/voreen/voreen-src-3.0.1-unix/bin/:/home/maid/tmp/ij146/ImageJ:.:/home/maid/bin:/misc/software-lin/matlabR2015a/bin:/home/maid/phd/3rdpartySoft/nifty_reg-1.3/niftyreg_install/bin:/misc/software-lin/lmbsoft/cudatoolkit-3.2.16-x86_64/cuda/bin:/misc/database/cv2/local/bin:/misc/software-lin/vibez/bin:/usr/lib/jvm/java-6-openjdk/jre/bin:/misc/software-lin/vivi:/home/maid/localsoft/voreen/voreen-src-3.0.1-unix/bin/:/home/maid/tmp/ij146/ImageJ
任何帮助,谢谢,多米尼克
我认为,如果您echo $PATH
,则会发现/usr/lib
在/usr/local/lib
之前被搜索。 因为它首先在/usr/lib
找到它,所以不会继续在/usr/local/lib
查找。
sys.path
仅覆盖$PYTHONPATH
变量,不向您显示$PATH
的内容。
我能够使它起作用
openpyxl
软件包。 /usr/local/lib/python2.7/dist-packages
对所有人都可读,奇怪的是以前不是这种情况-而且我没有注意到。 感谢所有为我提供帮助的人。 多米尼克
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.