如果想要让python文件在其它任何没有安装python的电脑也能运行的话,就需要将.py的python文件转化成.exe可执行文件。在我上一篇文章中就有讲到如何初步使用pip安装第三方库,我们用
pip install pyinstaller
来安装可以将python文件转化成可执行文件的第三方库
安装完在终端输入pyinstaller并回车即可看到pyinstaller的使用方法,输出如下:
usage: pyinstaller [-h] [-v] [-D] [-F] [--specpath DIR] [-n NAME]
[--add-data <SRC;DEST or SRC:DEST>]
[--add-binary <SRC;DEST or SRC:DEST>] [-p DIR]
[--hidden-import MODULENAME]
[--additional-hooks-dir HOOKSPATH]
[--runtime-hook RUNTIME_HOOKS] [--exclude-module EXCLUDES]
[--key KEY] [-d {all,imports,bootloader,noarchive}] [-s]
[--noupx] [--upx-exclude FILE] [-c] [-w]
[-i <FILE.ico or FILE.exe,ID or FILE.icns>]
[--version-file FILE] [-m <FILE or XML>] [-r RESOURCE]
[--uac-admin] [--uac-uiaccess] [--win-private-assemblies]
[--win-no-prefer-redirects]
[--osx-bundle-identifier BUNDLE_IDENTIFIER]
[--runtime-tmpdir PATH] [--bootloader-ignore-signals]
[--distpath DIR] [--workpath WORKPATH] [-y]
[--upx-dir UPX_DIR] [-a] [--clean] [--log-level LEVEL]
scriptname [scriptname ...]
pyinstaller: error: the following arguments are required: scriptname
我现在在hello.py中写入下面代码:
print("helloworld")
input()
然后将它放入F盘下的pro文件夹中
将cmd终端cd到该文件夹
现在我们在终端输入
pyinstaller hello.py
然后就打包完了,我们打开刚刚python文件所在的文件夹
我们发现多了__pycache__ build、dist、hello.spec四个文件,我们打开dist文件夹
打开刚刚打包的hello文件夹
这里面有很多文件
这里太长截图截不下,我就把它分成两张
我们不要删除里面任何一个文件,找到hello.exe并执行
程序就成功执行了
其实,我们还可以把python文件打包成单独一个exe文件,只需要将原来的
pyinstaller hello.py
更改成
pyinstaller -F hello.py
即可
-F表示单独exe一个文件
我们现在再写一个程序draw.py
import turtle
turtle.circle(100)
turtle.forward(200)
turtle.done()
然后执行终端脚本
pyinstaller -F draw.py
打包后依然打开dist文件夹(与该python文件同目录的dist文件夹)
运行draw.exe
后面有一个控制台很不好看,我们可以在打包时去掉
将终端脚本改为
pyinstaller -F -w draw.py
等待打包完成后再次运行
这样控制台窗口就不会显示了
打包exe还可以添加图标
将图标放进文件夹中
在打包刚才draw.py时将终端脚本改为
pyinstaller -F -w draw.py -i bird.ico
打包完成后打开dist文件夹
我们打包的draw.exe文件就有了设定的图标了
大家是不是已经学会了怎么用pyinstaller将python文件转化成exe了呢!
感谢大家的支持!