gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-03 11:49:47 24 4
gpt4 key购买 nike

我对 sys.path 中默认放置的导入顺序和路径有疑问通过 Python 2 和 Python 3。我比较了 sys.path 中的默认路径。在 Python 2.7 和 3.4 中使用 PYTHONPATH设置为空。我在 Ubuntu 14.10 上。

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

我得到以下结果:

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 中)以及 site.py 文件在 /usr/lib/python2.7/usr/lib/python3.4 中。

关于python - Python 2 和 Python 3 中 sys.path 中的导入顺序和路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30541245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com