【发布时间】:2014-08-16 18:16:27
【问题描述】:
我一直在使用os.path.abspath(sys.argv[0]) 来获取我的 exe 始终运行的路径(不管它是从哪里执行的),但是 python 2.x 有一个问题 sys.argv http://bugs.python.org/issue2128 尝试使用 unicode林间空地(PYGTK)文件的脚本路径
self.gladeloc = os.path.join(os.path.dirname(os.path.abspath(sys.argv[0])),"file.glade")
print self.gladeloc #prints fine C:\Users\фдсфгс\Desktop\ using idle console
self.builder.add_from_file(self.gladeloc) #prints C:\Users\пїЅпїЅпїЅ\Desktop\
我收到以下错误是否有替代方法可以在磁盘上获取 exe 位置(无论在哪里打开)我已经搜索了其他问题,似乎没有 2 个问题没有替代方法
1 获取文件位置,即使从不同的地方执行
2 unicode/utf-8 支持 pygtk 不支持 python 3 (fixed sys.argv) 所以我不能只升级
【问题讨论】:
-
错误报告包含一个解决方法。
-
其实
repr(self.gladeloc)打印的是什么?在我看来,这确实是一个不同的问题。 -
@MartijnPieters 我无法做到有一个例外,但我的回答似乎使它起作用
标签: python python-2.7 pygtk