如何使用python3代码查看包的路径?
在保存了文件的很长一点时间里,我们都没有使用文件的需求,偶尔需要用到包的话就要去查一下路径,这类的方法我们也介绍了不少,有的小伙伴会想要追求更快的查找方法。这里小编把查找路径的方法都进行展示,大家可以自由的选择,想要更快的查询路径方法就跟着小编一起往下看。
当你使用 import 导入一个包或模块时,Python 会去一些目录下查找,而这些目录是有优先级顺序的,正常人会使用 sys.path 查看。
>>> import sys>>> from pprint import pprint
>>> 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 -m sitesys.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方法不要好用太多了。聪明的小伙伴们已经把这三种方法,全部都保存下来啦,不同的大家都可以尝试。
以上是 如何使用python3代码查看包的路径? 的全部内容, 来源链接: utcz.com/z/541436.html