Pyinstaller 语法错误:异步函数内的“yield”(Python 3.5.1)

2023-11-22

我正在尝试使用pyinstaller创建单个可执行文件以分发给未安装 Python 的用户。

该脚本非常简单,只是为了测试水,我仅使用几行代码作为“豚鼠”。

The Hello World程序 - 无需导入,转换良好。

我的豚鼠程序,导入matplotlib.pyplot并绘制值列表,失败。

该问题已知并记录在案here,尽管他们声称它已修复,或者也许我无法正确阅读。 我认为修复应该在“开发版本”中可用,应该是 3.2.1,并且我已经通过安装pip install --upgrade pyinstaller,无济于事。

我不断收到相同的语法错误,这是在阅读时发生的

module jinja2\asyncsupport.py

知道如何解决这个问题吗?我的项目非常简单,只涉及matplotlib, pandas,读取文件并绘制一些数据。


我遇到了同样的错误。

原因是 Jinja2 在 2.9 版本中为 Python3.6 添加了新的异步函数。

请参见http://jinja.pocoo.org/docs/2.9/changelog/#version-2-9-6

有两种方法可以避免此错误。 这两者都对我有用。

  1. 降级jinja2

       # using Anaconda
       conda install jinja2=2.8.1
    
       # using pip
       pip install jinja2==2.8.1
    
  2. 安装 PyInstaller 的开发版本

      # install from github
      # Don't run "pip install -U pyinstaller" because the dev version is not released yet
      pip install git+https://github.com/pyinstaller/pyinstaller.git
    
      # check if "PyInstaller (3.3.dev0+g483dfde)" is in the list
      pip list
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pyinstaller 语法错误:异步函数内的“yield”(Python 3.5.1) 的相关文章

随机推荐