加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

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

发布时间:2020-12-20 13:50:09 所属栏目:Python 来源:网络整理
导读:我有一个关于 Python 2和 Python 3默认放置在sys.path中的导入顺序和路径的问题.我比较了Python 2.7和3.4中sys.path中的默认路径,并将PYTHONPATH设置为空.我在Ubuntu 14.10上. 对于Python 2和Python 3,我还通过apt-get在/usr/lib(版本1.8.2)和本地/home/user
我有一个关于 Python 2和 Python 3默认放置在sys.path中的导入顺序和路径的问题.我比较了Python 2.7和3.4中sys.path中的默认路径,并将PYTHONPATH设置为空.我在Ubuntu 14.10上.

对于Python 2和Python 3,我还通过apt-get在/usr/lib(版本1.8.2)和本地/home/user/.local/lib(版本1.9.2)中安装了numpy系统.

我得到以下结果:

Python 2.7

>>> 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.4

>>> 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'

你能帮我理解为什么Python 3 /usr/lib / python3 / dist-packages高于/home/user/.local/lib/python3.4/site-packages导致我的旧系统安装numpy被导入默认情况下,虽然它是Python 2中的另一种方式?

解决方法

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读