我正在尝试使用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
.

有帮助吗?

解决方案

exec在sympy中的兼容性(实际上包含在sympy中的mpmath)使用只在Python 2中运行的文件,该文件在Python 3中是无效的语法,并且只在Python 3中运行的文件无效语法在Python 2.您可以安全地忽略另一个。如果cx_freeze拒绝跳过此文件,则可以安全地删除它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top