-1

我搞乱了自我修改代码的想法,我想使用 py2exe 将文件更改为 .exe。我是否仍然可以让代码自行修改,还是需要将其保留为 .py?

自修改代码:

self = "Strain_0.py"
def Write_self(lis):
    ws = open(self, "a")
    lis.append("t = open('database.txt', 'a')\n")
    lis.append("t.write('Success%s')\n"%(self))
    lis.append("t.close()\n")
    lis.append("ran = success\n")
    lis.append("return ran\n")
    lis.append("    except:\n")
    lis.append("print('failed')\n")
    lis.append("t = open('database.txt', 'a')\n")
    lis.append("ran = 'failed'")
    lis.append("t.write('failed%s')\n"%(self))
    lis.append("t.close()\n")
    lis.append("return ran\n")
    ws.write("def test():\n")
    ws.write("    try:\n")
    for i in lis:
        if i != "except:\n"and "        " not in i:    
            ws.write("        "+i)
        else:
            ws.write(i)
4

1 回答 1

0

我假设这只是一个练习,但是(我认为我根本不会充实这个答案)。如果您使用 pyinstaller(不确定 py2exe,但它可能是相同的想法)来制作 exe,它基本上是一个自解压存档,它将一个 python 解释器和您的源代码提取到一个临时目录(您可以从中检索)环境变量)。找到临时目录后,您可以同步调用 pyinstaller(在进行修改后)将临时(修改后的)文件重新打包成新的 exe。

于 2015-10-14T07:40:59.697 回答