如何在py2exe编译后保留“导入”功能

时间:2011-11-26 19:41:39

标签: python py2exe

我编写了一个wxPython GUI,我目前通过对包含多个列表的模块文件使用“import data”来配置一些小部件和一些默认值。

但我需要使用py2exe为没有python安装的用户编译整个程序。 这样做,我失去了让用户编辑data.py文件来改变的能力 那些配置默认值。

我可以将每个列表作为一系列文本字符串,并读取和解析整个事情,但那 当python已经通过一个简单的import语句完成所有这些工作时,这似乎是一个巨大的浪费。

我可以用xrc / xml或者ConfigParser来做,但看起来应该有一种简单的方法来排序 import data.txt

或类似的东西,让python做它的事情!然后当py2exe获取它时,它不会为data.txt文件创建不可编辑的字节码。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

导入的文件由py2exe捆绑在可执行文件中。要做的是使用您在zip中或Inno Setup中与可执行文件打包的配置文件。配置文件是在某个时刻进行更改的文件,相反用户不应该修改python脚本。我告诉你,因为有些“消极”的经历可以说些礼貌。

对于我的程序(几乎所有都使用wxPython GUI),我使用带有配置数据(目录等)和一些全局变量的py模块。如果程序找不到我的.ini文件或者没有在ini中设置该特定参数,则此模块用于加载默认参数。然后我用inno setup分发所有内容(exe和辅助文件)。