如何获取Python模块的路径(不是sys.executable)
我需要在Python程序中获取PyQt库的路径。这个程序是从另一个应用程序作为脚本运行的,所以我的
sys.executable = 'D:/program files/visum/exe/visum115.exe
我需要我实际的Python路径(还有PyQt库模块的路径)
Path = C:\Python25\Lib\site-packages\PyQt4\plugins
我正在尝试用
os.environ['PYTHONPATH']
但我不确定这样做是否可靠。
谢谢!
附言:我需要这个路径来插入插件:
qApp.addLibaryPath('C:\Python25\Lib\site-packages\PyQt4\plugins')
3 个回答
0
一个非常简单的解决方案:
import PyQt
PyQt.__file__
5
你要找的是 sys.path
:
>>> import sys
>>> sys.path
['',
'/usr/lib/python2.7/site-packages/virtualenvwrapper.github-0.1-py2.7.egg',
'/usr/lib/python2.7/site-packages/pycharm-debug.egg',
'/usr/lib/python2.7/site-packages/Fom-0.9.2-py2.7.egg',
'/usr/lib/python2.7/site-packages/blinker-1.1-py2.7.egg',
'/usr/lib/python2.7/site-packages/httplib2-0.6.0-py2.7.egg',
'/usr/lib/python27.zip',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-linux2',
'/usr/lib/python2.7/lib-tk',
'/usr/lib/python2.7/lib-old',
'/usr/lib/python2.7/lib-dynload',
'/usr/lib/python2.7/site-packages',
'/usr/lib/python2.7/site-packages/Numeric',
'/usr/lib/python2.7/site-packages/PIL',
'/usr/lib/python2.7/site-packages/gst-0.10',
'/usr/lib/python2.7/site-packages/gtk-2.0',
'/usr/lib/python2.7/site-packages/setuptools-0.6c11.egg-info',
'/usr/lib/python2.7/site-packages/wx-2.8-gtk2-unicode']
24
你可以尝试加载这个模块,然后检查它的__file__属性,这样就能找到.pyc文件的路径。
比如可以这样做:
import MODULE, os
path = os.path.dirname(MODULE.__file__)
祝好,
希望这对你有帮助!