• 技术文章 >Python技术 >Python基础教程

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

    小妮浅浅小妮浅浅2020-12-02 16:09:02原创3364

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


    当你使用 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 site
    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方法不要好用太多了。聪明的小伙伴们已经把这三种方法,全部都保存下来啦,不同的大家都可以尝试。

    专题推荐:python3代码
    上一篇:emoji如何用python3代码过滤? 下一篇:python实战: 获取最大值函数

    相关文章推荐

    • python3代码如何自动补全?• python3.9中字典合并操作• python3代码中函数切割列表怎么实现?• 怎么用python3代码检查回文序列?• python3代码怎样用字典进行数学运算?• 如何使用python3代码创建迭代器?• python3代码之怎样用dir查看对象属性?• emoji如何用python3代码过滤?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网