所以我有一个Python脚本,我用py2exe编制了一个exe
,我希望它只在exe
版本运行时才能执行某些任务。有没有办法编写代码,所以我不必在创建exe
之前手动保存单独的版本?有没有办法让python脚本知道它是什么类型的文件?
我想象这样的事情:
if self.filename[-4:] == ".exe":
do this code
因此,这将在某种程度上能够找到它自己的文件名。可以做到吗?
所以我有一个Python脚本,我用py2exe编制了一个exe
,我希望它只在exe
版本运行时才能执行某些任务。有没有办法编写代码,所以我不必在创建exe
之前手动保存单独的版本?有没有办法让python脚本知道它是什么类型的文件?
我想象这样的事情:
if self.filename[-4:] == ".exe":
do this code
因此,这将在某种程度上能够找到它自己的文件名。可以做到吗?
尝试
import sys
...
if sys.argv[0].endswith('.exe'):
...
if ".exe" in self.fileName:
print "it's an exe file!"
鉴于self.filename = “someprogram.exe”
的py2exe文档给出一个办法做到这一点:
http://www.py2exe.org/index.cgi/HowToDetermineIfRunningFromExe
import imp, os, sys
def main_is_frozen():
return (hasattr(sys, "frozen") or # new py2exe
hasattr(sys, "importers") # old py2exe
or imp.is_frozen("__main__")) # tools/freeze
NameError:名称'self'未定义d –