gpt4 book ai didi

python - 使用 py2exe 处理动态导入

转载 作者:太空宇宙 更新时间:2023-11-03 11:08:15 25 4
gpt4 key购买 nike

我在使用 py2exe 为我的应用程序准备 .exe 时遇到问题。这个问题的根源是我为使用来自一个动态定义的模块。

def of_import(module, classname, country = None):
'''
Returns country specific class found in country module
'''
if country is None:
country = CONF.get('simulation', 'country')
_temp = __import__(country + '.' + module,
globals = globals(),
locals = locals(),
fromlist = [classname],
level=-1)
return getattr(_temp, classname, None)

当我尝试加载一些类时:

self.InputTable = of_import('model.data', 'InputTable')

运行 .exe 时出现以下错误:

File "core\utils.pyc", line 900, in of_import
ImportError: No module named france.model.data

我应该准确地说 france.model.data.py 确实存在。

处理这个问题的适当方法是什么?

这里的信息是安装文件的链接:https://github.com/openfisca/openfisca/blob/dev/src/setup_x64.py

最佳答案

我有一个类似的设置

确保将动态模块添加到 py2exe 的“包”部分

setup(windows=[{
"script" : "openFisca.pyw"
}],
options={"py2exe" : {"includes" : ["sip", "encodings.*", "numpy.*"],
"packages": ["france","tunisia"],
"dist_dir": dist_dir,
"bundle_files":3,
"dll_excludes": ["MSVCP90.dll"]
}},
data_files=data_files)

关于python - 使用 py2exe 处理动态导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13629321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com