python 编程文件py文件到exe的转换,方法很多,这里提供两种:
1、使用py2exe和cx_Freeze
2、关于py2exe生成的EXE在没有配置环境的新机器上出现如下问题的解决办法
问题1、在已经安装玩Python的前提下安装py2exe
使用:首先新建py文件:setup.py
文件内容:
from distutils.core import setup
import numpy as np
import py2exe
setup(windows=['CSIM_DET.py'])
CSIM_DET.py是要待转换的可执行Python代码。
转换以后会生成,build和dist两个文件夹,需要将程序的依赖和关联文件夹,放在dist文件之下。
双击'CSIM_DET.exe测试,完成运行。
安装cx_Freeze,下载与机型相符的whl文件,
需要安装wheel :pip install wheel
然后进入与whl文件相同的目录下,在cmd下执行pip install xxxx.whl安装
若没有cxfreeze.bat文件请手动添加:
内容如下:
@echo off
E:\Anaconda2\python.exe E:\Anaconda2\Scripts\cxfreeze %*
安装完成
使用:在cmd下执行:
D:\CSIM_DET_code\SIM_DET.py --target-dir D:\test
文件路径和目标路径自行修改。
出现如下问题的解决办法:
Traceback (most recent call last):
File "CSIM_DET.py", line 6, in <module>
import numpy as np
File "numpy\__init__.pyc", line 180, in <module>
File "numpy\add_newdocs.pyc", line 13, in <module>
File "numpy\lib\__init__.pyc", line 8, in <module>
File "numpy\lib\type_check.pyc", line 11, in <module>
File "numpy\core\__init__.pyc", line 14, in <module>
File "numpy\core\multiarray.pyc", line 12, in <module>
File "numpy\core\multiarray.pyc", line 10, in __load
ImportError: DLL load failed: 找不到指定的模块。
解决办法为:在Python安装路径下找到Library\bin\中的这些,手动拷贝到dist文件夹中,即可。