在文件系统中找到python对象定义
pyloc的Python项目详细描述
pyloc在 你的文件系统。
简介
pyloc与^{tt1}非常相似$ 提供。但是,它只专注于检索文件名(和 最后是行号),其中定义了给定的python对象。 对象可以是包、模块、类、方法或函数。
pyloc进一步努力找出行和列 数字及其输出的格式设置为便于传递 到emacsclient或vi。
示例
您可以在子进程包中看到Popen.wait方法的位置:
$ python -m pyloc -f human subprocess:Popen.wait Filename: /Users/polrop/.pyenv/versions/2.7.9/lib/python2.7/subprocess.py Line: 1379 $ python -m pyloc -f human email.utils:formataddr Filename: /Users/polrop/.pyenv/versions/2.7.9/lib/python2.7/email/utils.py Line: 85
(如果您的系统中有不同的 安装路径和版本)
注意,对象命名语法如下:module[:qualname] 从0.2.0版开始,语法module[.qualname]a la pydoc也是 支持。
要在Emacs中打开它,您可以执行以下操作:
$ emacsclient `python -m pyloc -f emacs subprocess:Popen.wait`
或在VIM中:
$ vim `python -m pyloc -f vi subprocess:Popen.wait`
如果您一直懒得键入-f <format>,并且经常使用 同样的格式,您可以这样设置默认输出格式(您可以 可以在.zshenv或.bashrc中添加此行:
$ exportPYLOC_DEFAULT_FORMAT=emacs
pyloc将始终基于python解释器定位对象 您正在使用:
$ python3 -m pyloc -f human subprocess:Popen.wait Filename: /Users/polrop/.pyenv/versions/3.4.3/lib/python3.4/subprocess.py Line: 1526 $ /usr/local/bin/python -m pyloc -f human email.utils:formataddr Filename: /usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/email/utils.py Line: 85 $ /usr/bin/python -m pyloc -f human email.utils:formataddr Filename: /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/email/utils.py Line: 85
安装
使用pip
您可以使用pip安装pyloc,如下所示:
$ pip install pyloc
或
$ pip3 install pyloc
直接从源头
$ git clone https://github.com/nicolasdespres/pyloc.git $ cd pyloc $ python setup.py develop # If you also want it for Python 3 $ python3 setup.py develop
注意,如果还安装了python 3版本,则pyloc2 命令行驱动程序将不工作,但pyloc驱动程序将指向 到Python2安装。
要卸载它,您可以执行以下操作:
$ python setup.py develop --uninstall
# And if you installed the Python 3 version
$ python3 setup.py develop --uninstall
但是,这不会删除由easy生成的条目脚本 安装。
已知错误
- 类或内置类型(如int或str)不包含位置 信息。在本例中,pyloc试图在 阿斯特。此过程可能不准确,因为python是动态的 语言。
黑客攻击
有关详细信息,请参见HACKING。
发行说明
请参见相应的标记注释。克隆后,您可以执行以下操作:例如:
$ git show v0.1.10
许可证
pyloc在 Simplified BSD License。 版权所有(C)2015-2106,Nicolas Despr_s 保留所有权利
如源代码中所述,一些部分是从 由Ka Ping Yee编写的^{TT14}$模块<;ping@lfw.org>;和 yury selivanov<;yselivanov@sprymix.com>;形成python 3.4.3 发行版(请参阅python发行版中的许可文件)