Python 2和Python 3中sys.path中的导入和路径顺序

时间:2015-05-30 01:22:41

标签: python python-2.7 ubuntu python-3.4

我有一个关于Python 2和Python 3默认放置在sys.path中的导入顺序和路径的问题。我在Python 2.7和3.4中sys.path中的默认路径与{ {1}}设置为空。我在Ubuntu 14.10上。

对于Python 2和Python 3,我也通过apt-get在/ usr / lib(版本1.8.2)和本地PYTHONPATH(版本1.9.2)中安装了numpy。 / p>

我得到以下结果:

Python 2.7

/home/user/.local/lib

Python 3.4

>>> print('\n'.join(sys.path))

/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-dynload
/home/user/.local/lib/python2.7/site-packages
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages
/usr/lib/pymodules/python2.7

>>> import numpy
>>> numpy.version 
<module 'numpy.version' from  /home/user/.local/lib/python2.7/site-packages/numpy/version.pyc'>
>>> numpy.version.version
'1.9.2'

你能否帮我理解为什么在Python 3中>>> print('\n'.join(sys.path)) /usr/lib/python3/dist-packages /usr/lib/python3.4 /usr/lib/python3.4/plat-x86_64-linux-gnu /usr/lib/python3.4/lib-dynload /home/user/.local/lib/python3.4/site-packages /usr/local/lib/python3.4/dist-packages >>> import numpy >>> numpy.version <module 'numpy.version' from '/usr/lib/python3/dist-packages/numpy/version.py'> >>> numpy.version.version '1.8.2' 高于/usr/lib/python3/dist-packages导致我的旧系统安装numpy默认被导入,而它在另一种方式相反Python 2?

1 个答案:

答案 0 :(得分:1)

我很确定这是一个ubuntu的东西,而不是Python的东西。检查全局网站自定义(/etc/python2.7/etc/python3.4)以及site.py/usr/lib/python2.7中的/usr/lib/python3.4个文件。