我正在尝试使用cx_freeze将python代码转换为windows .exe。当我使用命令行运行setup.py时,它像往常一样运行,然后只返回无效的语法。该程序使用tkinter模块以及sympy,我相信后者会导致问题。任何解决方案将不胜感激。以下是该流程停止前的最后一部分。
deferredImports, namespace = namespace)
File "C:\Python33\lib\site-packages\cx_Freeze\finder.py", line 338, in _Intern
alImportModule
parentModule, namespace)
File "C:\Python33\lib\site-packages\cx_Freeze\finder.py", line 366, in _LoadMo
dule
module.code = compile(codeString, path, "exec")
File "C:\Python33\lib\site-packages\sympy\mpmath\libmp\exec_py2.py", line 2
exec string in globals, locals
^
SyntaxError: invalid syntax
答案 0 :(得分:4)
SymPy中exec的兼容性(实际上是mpmath,包含在SymPy中)使用的文件只在Python 2中运行,这是Python 3中无效的语法,而文件只在Python 3中运行,语法无效在Python 2中。您可以放心地忽略另一个。如果cx_freeze拒绝跳过此文件,您可以安全地删除它。