当前位置: 首页 > 图灵资讯 > 行业资讯> 如何使用python3代码查看包的路径?

如何使用python3代码查看包的路径?

来源:图灵python
时间: 2024-10-14 13:39:50

在保存了文件的很长一点时间里,我们都没有使用文件的需求,偶尔需要用到包的话就要去查一下路径,这类的方法我们也介绍了不少,有的小伙伴会想要追求更快的查找方法。这里小编把查找路径的方法都进行展示,大家可以自由的选择,想要更快的查询路径方法就跟着小编一起往下看。

当你使用 import 导入一个包或模块时,Python 会去一些目录下查找,而这些目录是有优先级顺序的,正常人会使用 sys.path 查看。

>>>importsys
>>>frompprintimportpprint
>>>pprint(sys.path)
['',
'/usr/local/Python3.7/lib/python37.zip',
'/usr/local/Python3.7/lib/python3.7',
'/usr/local/Python3.7/lib/python3.7/lib-dynload',
'/home/wangbm/.local/lib/python3.7/site-packages',
'/usr/local/Python3.7/lib/python3.7/site-packages']
>>>

那有没有更快的方式呢?

我这有一种连 console 模式都不用进入的方法呢?

你可能会想到这种,但这本质上与上面并无区别

[wangbm@localhost~]$python-c"print('\n'.join(__import__('sys').path))"

/usr/lib/python2.7/site-packages/pip-18.1-py2.7.egg
/usr/lib/python2.7/site-packages/redis-3.0.1-py2.7.egg
/usr/lib64/python27.zip
/usr/lib64/python2.7
/usr/lib64/python2.7/plat-linux2
/usr/lib64/python2.7/lib-tk
/usr/lib64/python2.7/lib-old
/usr/lib64/python2.7/lib-dynload
/home/wangbm/.local/lib/python2.7/site-packages
/usr/lib64/python2.7/site-packages
/usr/lib64/python2.7/site-packages/gtk-2.0
/usr/lib/python2.7/site-packages

这里我要介绍的是比上面两种都方便的多的方法,一行命令即可解决

[wangbm@localhost~]$python3-msite
sys.path=[
'/home/wangbm',
'/usr/local/Python3.7/lib/python37.zip',
'/usr/local/Python3.7/lib/python3.7',
'/usr/local/Python3.7/lib/python3.7/lib-dynload',
'/home/wangbm/.local/lib/python3.7/site-packages',
'/usr/local/Python3.7/lib/python3.7/site-packages',
]
USER_BASE:'/home/wangbm/.local'(exists)
USER_SITE:'/home/wangbm/.local/lib/python3.7/site-packages'(exists)
ENABLE_USER_SITE:True

从输出你可以发现,这个列的路径会比sys.path更全,它包含了用户环境的目录。

这里很多小伙伴会惊喜的发现,原来只需一行命令,就可以轻松用代码查看路径,相对于以往的sys.path方法不要好用太多了。聪明的小伙伴们已经把这三种方法,全部都保存下来啦,不同的大家都可以尝试。