我想检测模块是否已更改.现在,使用inotify很简单,您只需要知道要从中获取通知的目录.
如何在python中检索模块的路径?
这似乎是一个新手问题,但事实并非如此.一些常见的方法并不适用于所有情况:
这意味着使用path = os.path.abspath(os.path.dirname(sys.argv[0])),但如果您从另一个目录中的另一个Python脚本运行,这不起作用,这可能发生在现实生活中.
这意味着使用path = os.path.abspath(os.path.dirname(__file__)),但我发现这不起作用:
py2exe没有__file__属性,但有一个解决方法execute()没有__file__属性NameError: global name '__file__' is not defined回答不完整的相关问题:
我正在寻找一个通用的解决方案,一个适用于所有上述用例的解决方案.
这是测试用例的结果:
a.py: __file__= a.py
a.py: os.getcwd()= C:\zzz
b.py: sys.argv[0]= a.py
b.py: __file__= a.py
b.py: os.getcwd()= C:\zzz
Run Code Online (Sandbox Code Playgroud)
#! /usr/bin/env python
import os, sys
print "a.py: sys.argv[0]=", sys.argv[0]
print "a.py: __file__=", __file__
print …Run Code Online (Sandbox Code Playgroud) 我需要在python程序中获取Path for PyQt库.程序作为另一个应用程序的脚本运行,因此我的
sys.executable = 'D:/program files/visum/exe/visum115.exe
Run Code Online (Sandbox Code Playgroud)
我需要我的实际python路径(和PyQt库模块的路径)
Path = C:\Python25\Lib\site-packages\PyQt4\plugins
Run Code Online (Sandbox Code Playgroud)
我正在尝试
os.environ['PYTHONPATH']
Run Code Online (Sandbox Code Playgroud)
但我不确定它是否能够健壮.
问候!
PS.我需要它才能插入插件:
qApp.addLibaryPath('C:\Python25\Lib\site-packages\PyQt4\plugins')
Run Code Online (Sandbox Code Playgroud) 我正在查看Python中的一些源代码,并看到它正在导入genericpath模块.我在哪里可以找到这个模块?
import genericpath
from genericpath import *
Run Code Online (Sandbox Code Playgroud)
搜索genericpath没有任何结果......