1

所以我有一个 Python 脚本,我exe用 py2exe 制作了它,我希望它仅在exe版本运行时执行某些任务。有没有办法编写代码,这样我就不必在创建之前手动保存单独的版本exe

我正在描绘这样的事情:

if self.filename[-4:] == ".exe":
    do this code

所以它会以某种方式找到自己的文件名。可以做到吗?

4

3 回答 3

4

尝试

import sys
...
if sys.argv[0].endswith('.exe'):
   ...
于 2013-10-30T20:27:05.063 回答
0

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
于 2013-10-30T20:43:43.000 回答
0
if ".exe" in self.fileName:
    print "it's an exe file!"

鉴于 self.filename = "someprogram.exe"

于 2013-10-30T20:26:31.637 回答