代码之家  ›  专栏  ›  技术社区  ›  Ram Rachum

使Py2Exe生成`.py`文件

  •  2
  • Ram Rachum  · 技术社区  · 14 年前

    有没有办法使Py2Exe输出 .py 源文件而不是编译的字节 .pyc 库中的文件?

    1 回复  |  直到 11 年前
        1
  •  1
  •   odony    11 年前

    我很久以前就做过,所以我希望我记得正确:

    • 将compressed设置为false,这样py2exe就不会创建压缩库文件。
    • 将optimize设置为零,以便py2exe将写入 pyc 文件夹。

    更新 :ram rachum是正确的,使用 skip_archive 选项而不是 compressed .

    您将无法修改您的主python文件,因为它将嵌入到主可执行文件中,所以请将这一点降到最低。然后你就可以替换 聚酰亚胺 文件与您 py 根据需要手动分发文件。但是,没有理由替换标准库,只有您自己的代码。

    (它不是调试的最佳选择,但我想您只想通过这种方式解决软件发布版本中出现的一些问题。)

    如果不行请告诉我,我会尽力帮忙的。

    更新 :

    我刚刚阅读了py2exe源代码的相关部分。Py2Exe似乎不支持它。所以我们可以选择触摸它的源代码。

    你可以很容易地修改 py2exe 以支持此模式。见 byte_compile 功能在 build_exe.py . 有人打电话给 compile 内置函数,可以用 copy_file . 不要忘记修改目标文件名( dfile )延长 .py 而不是 .pyc .pyo . 我知道这是拼凑的,但我看不出任何其他的可能性来解决你的问题。

    您还可以添加新的 PY2EXE 选择或引入新的 optimize 如果你有好奇心的话,这是值得的。实际上,这将是对Py2Exe的开源贡献。;)