![](/img/trans.png)
[英]is there a built-in python analog to unix 'wc' for sniffing a file?
[英]Python analog of Unix 'which'
在 *nix 系统中,可以使用which
来找出命令的完整路径。 例如:
$ which python
/usr/bin/python
或whereis
显示给定命令的所有可能位置
$ whereis python
python: /bin/python.exe /bin/python2.5-config /usr/bin/python.exe /usr/bin/python2.5-config /lib/python2.4 /lib/python2.5 /usr/lib/python2.4 /usr/lib/python2.5 /usr/include/python2.4 /usr/include/python2.5 /usr/share/man/man1/python.1
有没有一种简单的方法可以找出模块在 PYTHONPATH 中的位置。 就像是:
>>> which (sys)
'c:\\Python25\Lib\site-packages'
如果你这样做:
modulename.__file__
您将获得该确切模块的完整路径返回。 例如,导入 django:
>>>> import django
>>> django.__file__
'/home/bartek/.virtualenvs/safetyville/lib/python2.6/site-packages/django/__init__.pyc'
编辑:如果您没有机会,我建议您查看下面的评论以获得一些好的见解。
这有点python pywhich os django PIL
但您可以输入python pywhich os django PIL
:
import os, os.path
import sys
def pywhich(mod):
for p in sys.path:
try:
if any(p.startswith(mod + '.py') for p in os.listdir(p)):
return os.path.join(p, mod)
except OSError:
pass
return "Not found"
if __name__ == '__main__':
for arg in sys.argv[1:]:
print arg, pywhich(arg)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.