![4b104e94c83cd675c9de4453d7caad58.png](https://i-blog.csdnimg.cn/blog_migrate/5fc21e3eb44beab8d01165c22d817b65.jpeg)
一、将python文件打包成.exe文件
1、环境:pyinstaller,pythonx.x
2、安装python及pyinstaller
(1)打开DOS窗口,输入以下命令,安装pyinstaller:
(安装python略)
pip install pyinstaller
![6b7cee066a23b71b30debed6011f85e4.png](https://i-blog.csdnimg.cn/blog_migrate/86cc4ec024183022d14f9f2374276173.png)
注意:pyinstaller需要在其安装的路径下才能正确运行
(2)安装完成后,检查是否安装成功:pyinstaller --version
3、打包成exe程序
(1)打包单个脚本文件:
1)输入命令
pyinstaller -F [-w] *.py -n [自定义名称]
![a0fb56835fd7322affaef86b0dfa764e.png](https://i-blog.csdnimg.cn/blog_migrate/8869fdb1fb89134f1ccce0fde298a4d6.png)
-F: 打包成一个exe文件
-w: 取消控制台显示,即运行时不弹出黑窗口;建议不使用-w,方便查看打印的信息或者出错信息
-n: 自定义.exe文件的名称;如果不使用-n,则默认是脚本脚本文件的名称
2)生成的文件:
(打包成功,在命令窗口会显示exe程序的位置,在dist文件夹下)
![d92fb0987343a746d5802a74c58eb3c5.png](https://i-blog.csdnimg.cn/blog_migrate/072fac1e5b0d0bcdb7eab6ec58704508.png)
(2)打包项目中的所有文件
pyinstaller -F [-w] [项目的主文件] –hidden-import [其他的python文件]
![dab7bc22c946623547d87304eab784bc.png](https://i-blog.csdnimg.cn/blog_migrate/efaade3e5ed6daf3955dcf69cfc01d93.jpeg)
二、可能会遇到的问题:
1、pyInstaller提示错误"Unable to find "nltk_data" when adding binary and data files
我的环境:win10+python3.7+pyinstaller3.6
【解决方案】
- 找到hook-nltk.py文件,通常此目录为
<PythonPath>/Lib/site-packages/PyInstaller/hooks/hook-nltk.py
(我的)D:Program FilesAnaconda3Libsite-packagesPyInstallerhooks hook-nltk.py
- 修改此.py文件
修改后:
![539af1637402d48d1f36d1a90f8d4f44.png](https://i-blog.csdnimg.cn/blog_migrate/65bd0434421b58f9ee832cb6230cebce.png)
注意:
一定要把<path_to_nltk_data>替换成自己电脑上nltk_data文件夹所在的路径!
可使用两行python代码找到nltk_data文件夹所在路径:
from nltk import data
print(data.find('.'))
2、pyinstaller打包出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 解决方案
【解决方案】
在打包的命令行中先输入chcp 65001
然后再输入打包命令:
pyinstaller -F xxx.py