如何使用Pyinstaller在冻结Python 2.7和Python 3.4应用程序之间切换?
问题描述:
我有一个脚本EDS_converter.py用python 2.7编写。当我运行pyinstaller EDS_converter.py
时.exe有错误,如果我尝试在python 3.4中运行我的代码,我可以复制该错误。如何使用Pyinstaller在冻结Python 2.7和Python 3.4应用程序之间切换?
看着dist文件夹果然我看到python34.dll
和pywintypes34.dll
。我经常在Python 3.4中使用Pyinstaller来冻结一个不同的应用程序。那么如何轻松地在3.4和2.7之间切换?
我已经搜索了很长时间并阅读了Pyinstaller文档。我很惊讶没有一个容易找到的解决方案,并会删除这个问题,如果它是重复的。
答
问题是,您的环境变量PATH
中有Python 3 pyinstaller
路径。
假设你使用Windows的默认安装(修改如适用),你可以在命令行输入:
C:\Python27\Scripts\pyinstaller.exe EDS_converter.py
另外,您也可以拨打pyinstaller
脚本:
C:\Python27\python.exe C:\Python27\Scripts\pyinstaller-script.py EDS_converter.py
我使用了完整路径,因为您的默认PYTHONPATH
指向您的Python 3安装。
我很困惑。 pyinstaller.exe和pyinstaller-script.py存在于C:\ Python27 \ Scripts中。尽管pyinstaller.exe确实存在于3.4文件夹中。我没有设置查看我的环境变量的PYTHONPATH变量。我有我的路径变量C:\ Python27 \,C:\ Python27 \ Scripts和这两个。 – Frikster
当我在终端运行python时,我得到2.7。我使用py -3得到3.4 – Frikster
我用pip(它是2.7。pip3的3.4)来安装pyinstaller for 2.7。当我在将代码移植到3.4时出现问题时,我必须以某种方式卸载它,因为我之前冻结了2.7个应用程序。无论哪种方式。现在工作,我很高兴现在所有这些信息在一个地方,以防万一发生这种情况,thanx – Frikster