㈠ 如何将自己编写的.py文件转换为可执行.exe文件
利用python写了一个小脚本想要传给使用Windows但没有装Python的朋友执行,这时候就可以利用将档案包装成exe档案,让没有Python的朋友也可以执行。本篇将介绍利用套件“PyInstaller”制作exe档。
1|0安装方法
1234
#安装pyinstallerpip install pyinstaller#安装依赖pip install pywin32-ctypes
2|0常用参数介绍
pyinstaller -h来查看参数
-F打包成一个exe文件
-i图标路径
-w使用视窗,无控制台
-c使用控制台,无视窗
-D创建一个目录,包含exe以及其他一些依赖性文件
编译文件时,我们通常使用如下命令:
pyinstaller -F -w -i favo.ico main.py
3|0静态文件
对于python所依赖的图片,config.yaml等静态文件,pyinstall不会自动打包,需要手动在main.py(所需要打包的入口文件)的相同目录中寻找main.spec,修改datas依赖,才可以自动打包到exe的相同目录下,然后执行即可
datas是一个数组,每个子项是一个tuple,其中tuple的第一个参数是你要打包的源路径,第二个参数是打包后的名字
12345678910111213141516
# -*- mode: python -*- block_cipher = None a = Analysis(['ui.py'],pathex=['C:\\Users\\user\\Desktop\\resilio\\toyou\\code\\zeus_board_test'],binaries=[],datas=[('C:\\Users\\user\\Desktop\\resilio\\toyou\\code\\zeus_board_test\\images','images'),('C:\\Users\\user\\Desktop\\resilio\\toyou\\code\\zeus_board_test\\question.yaml','question.yaml')],hiddenimports=[],hookspath=[],runtime_hooks=[],excludes=[],win_no_prefer_redirects=False,win_private_assemblies=False,cipher=block_cipher,noarchive=False)
然后执行:
pyinstaller -F main.spec
4|0示例
如下图所示,我们编写一个输出helow pyinstaller的Python程序,并利用input()使程序可以暂时停在输出画面。
12
print('helow pyinstaller')input('please wait:')
编译python为exe,编译过程中会自动安装相关依赖
pyinstaller -F hello.py
编译过程中会产生如下输出:
1234567891011121314
…6942 INFO: checking PY6944 INFO: Building because toc changed6944 INFO: Building PYZ(ZlibArchive)C:\Users\user\Desktop\test\build\test\PYZ-00.pyz7559 INFO: Building PYZ(ZlibArchive)C:\Users\user\Desktop\test\build\test\PYZ-00.pyz completed successfully.7568 INFO: checking PKG7569 INFO: Building because toc changed7569 INFO: Building PKG(CArchive)PKG-00.pkg9407 INFO: Building PKG(CArchive)PKG-00.pkg completed successfully.9409 INFO: Bootloader c:\users\user\appdata\local\programs\python\python36\lib\site-packages\PyInstaller\bootloader\Windows-64bit\run.exe9409 INFO: checking EXE9411 INFO: Building because toc changed9411 INFO: Building EXE from EXE-00.toc9412 INFO: Appending archive to EXE C:\Users\user\Desktop\test\dist\test.exe9455 INFO: Building EXE from EXE-00.toc completed successfully.
通过输出可以看出pyinstaller进行了如下操作:
会先建立一个hello.spec
建立“build”文件夹
建立log纪录档与工作档案于文件夹build中
建立“dist”文件夹
建立执行档(.exe)在“dist”文件夹
4|1注意事项
执行档案可在win8/win10,64位的电脑运行,但win7 x64和其余所有32位失败,会提示不兼容,若要能32位与64位皆可运行,就要在Python 32位的环境下编译PyInstaller打包exe,才能在32位与64位成功。
㈡ python怎么转成exe文件
python提供pyinstaller库将代码打包成exe可执行文件,步骤如下:
1.安装pyinstaller
安装的方式如同安装导入其他包一样,使用pip,执行命令:
pip3 install pyinstaller
自动下载并安装。
2.打包并转换成exe
打开终端,进入到需要转换的python文件路径下,执行命令:
pyinstaller -F -w (-i icofile) filename
参数说明:
filename:Python文件名
-w :表示隐藏程序运行时的命令行窗口(不加-w会有黑色窗口)
-i icofile:可选参数(可不要),表示给程序加上图标,图标必须为.ico格式。icofile表示图标所在路径,建议直接放在python同一路径下,这样子打包的时候直接写文件名就好。
3.打包成功
命令执行成功后,会生成N个文件夹,所需要的exe文件就在dist文件夹里。
至此,在windows下将python文件转成exe就这样搞定了。
推荐课程:Python高级进阶视频教程
㈢ 如何把Python脚本导出为exe程序
一.pyinstaller简介
pyinstaller将Python脚本打包成可执行程序,使在没有Python环境的机器上运行
最新版是pyinstaller 3.1.1。支持python2.7和python3.3+。
可运行在Windows,Mac和Linux操作系统下。
但它不是跨编译的,也就是说在Windows下用PyInstaller生成的exe只能运行在Windows下,在Linux下生成的只能运行在Linux下。
二.pyinstaller在windows下的安装
使用命令pip install pyinstaller即可
在windows下,pyinstaller需要PyWin32的支持。当用pip安装pyinstaller时未找到PyWin32,会自动安装pypiwin32
如果有打包错误,具体看build里的warn*.txt文档,里面详细记载了错误的原因。一般都是库丢失。
spec文件告诉PyInstaller如何去处理脚本。它对脚本名以及大多数pyinstaller的可选参数进行加密。PyInstaller就是通过执行spec文件的内容来build the app。
㈣ 怎样将写好的.py文件生成exe可执行文件
将写好的.py文件生成exe可执行文件的方法
安装好python,建议将python安装在根目录下。
去cxfreeze官网下载好对应的cx_freeeze版本。
正确安装cx_freeze,看下图
运行:cmd命令,查看cx_freeze是否安装正确。如果出现了下图的情况,说明环境变量设置不正确。请点击下面的环境变量设置方法。
0环境变量设置方法
当然,设置完环境变量可能还是有问题,那么这里就要设置路径了,路径设置在cxfreeze.bat文件中,cxfreeze.bat文件在:c:python34scripts文件夹下(如果你不是安装在c盘,找到相应位置即可)看下图,这里发现没有cxfreeze.bat文件。
那么要怎么生成cxfreeze.bat文件呢。用python编译一下cxfreeze-postinstall(二进制)文件即可,编译后的文件如下图
用记事本打开cxfreeze.bat文件。如果你不是装在c盘,请将路径改成你的安装路径。
这里以经典的hello world为例,看下图。cd: c:python34scripts将目录转到cxfreeze所在目录。cxfreeze c: esthello.py --target-dir c: est命令:cxfreeze c: esthello.py对hello.py进行编译,--target-dir目标存储目录为c: est文件夹。生成过程相当长,如下图。
看下test文件夹下,已经生成.exe文件。
点击运行,如下图(如果没有在代码中添加暂停的代码,只能看到黑框一闪而过)代码在后面一张图,供参考。至些,.py文件成功转成.exe可执行文件。
小刚SEO为你解答
㈤ python如何变为exe程序
PyInstaller其实就是把python解析器和你自己的脚本打包成一个可执行的文件,和编译成真正的机器码完全是两回事,所以千万不要指
望成打包成一个可执行文件会提高运行效率,相反可能会降低运行效率,好处就是在运行者的机器上不用安装python和你的脚本依赖的
库。在Linux操作系统下,它主要用的binutil工具包里面的ldd和objmp命令。
PyInstaller输入你指定的的脚本,首先分析脚本所依赖的其他脚本,然后去查找,复制,把所有相关的脚本收集起来,包括Python解析
器,然后把这些文件放在一个目录下,或者打包进一个可执行文件里面。
可以直接发布输出的整个文件夹里面的文件,或者生成的可执行文件。你只需要告诉用户,你的应用App是自我包含的,不需要安装其他
包,或某个版本的Python,就可以直接运行了。
需要注意的是,PyInstaller打包的执行文件,只能在和打包机器系统同样的环境下。也就是说,不具备可移植性,若需要在不同系统上运
行,就必须针对该平台进行打包。
pyinstaller将Python脚本打包成可执行程序,使在没有Python环境的机器上运行
最新版是pyinstaller 3.1.1。支持python2.7和python3.3+。
可运行在Windows,Mac和Linux操作系统下。
但它不是跨编译的,也就是说在Windows下用PyInstaller生成的exe只能运行在Windows下,在Linux下生成的只能运行在Linux下。
基本语法:
pyinstaller options myscript.py
常用的可选参数如下:
--onefile 将结果打包成一个可执行文件
--onedir 将所有结果打包到一个文件夹中,该文件夹包括一个可执行文件和可执行文件执行时需要的依赖文件(默认)
--paths=DIR 设置导入路径
--distpath=DIR 设置将打包的结果文件放置的路径
--specpath=DIR 设置将spec文件放置的路径
--windowed 使用windows子系统执行,不会打开命令行(只对windows有效)
--nowindowed 使用控制台子系统执行(默认)(只对windows有效)
--icon=<FILE.ICO> 将file.ico添加为可执行文件的资源(只对windows有效)
更多技术请关注Python视频教程。
㈥ python如何编译成exe文件
python如何编译成exe文件?具体步骤如下:
python学习网,大量的免费python视频教程,欢迎在线学习!
1、使用pycharm安装pyinstaller。
2、找到pyinstaller的安装目录。
C:-script.py
相关推荐:《Python教程》
注意在该目录的母目录下一般有我们的程序文件
C:
3、将我们要打包的程序至pyinstaller的安装目录下:
C:venvScripts
4、打开cmd,找到该路径 cd C:venvScripts,输入命令pyinstaller -F *.py
如下图显示,打包成功。
5、此时在Scripts的目录下能够看到已经生成的dist目录和*.spec文件。运行*.exe文件即可。
6、也可以使用命令pyinstaller -F *.py,该命令会将所有的依赖放到一个文件夹中。相当于-F的解压。
㈦ 怎样将python生成exe
Python是一个脚本语言,被解释器解释执行。它的发布方式:
.py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各种库。(Python官方的各种安装包就是这样做的)
.pyc文件:有些公司或个人因为机密或者各种原因,不愿意源码被运行者看到,可以使用pyc文件发布,pyc文件是Python解释器可以识别的二进制码,故发布后也是跨平台的,需要使用者安装相应版本的Python和依赖库。
可执行文件:对于非码农用户或者一些小白用户,你让他装个Python同时还要折腾一堆依赖库,那简直是个灾难。对于此类用户,最简单的方式就是提供一个可执行文件,只需要把用法告诉Ta即可。比较麻烦的是需要针对不同平台需要打包不同的可执行文件(Windows,Linux,Mac,...)。
本文主要就是介绍最后一种方式,.py和.pyc都比较简单,Python本身就可以搞定。将Python脚本打包成可执行文件有多种方式,本文重点介绍PyInstaller,
PyInstaller的原理简介
PyInstaller其实就是把python解析器和你自己的脚本打包成一个可执行的文件,和编译成真正的机器码完全是两回事,所以千万不要指望成打包成一个可执行文件会提高运行效率,相反可能会降低运行效率,好处就是在运行者的机器上不用安装python和你的脚本依赖的库。在Linux操作系统下,它主要用的binutil工具包里面的ldd和objmp命令。
PyInstaller输入你指定的的脚本,首先分析脚本所依赖的其他脚本,然后去查找,复制,把所有相关的脚本收集起来,包括Python解析器,然后把这些文件放在一个目录下,或者打包进一个可执行文件里面。
可以直接发布输出的整个文件夹里面的文件,或者生成的可执行文件。你只需要告诉用户,你的应用App是自我包含的,不需要安装其他包,或某个版本的Python,就可以直接运行了。
需要注意的是,PyInstaller打包的执行文件,只能在和打包机器系统同样的环境下。也就是说,不具备可移植性,若需要在不同系统上运行,就必须针对该平台进行打包。
pyinstaller将Python脚本打包成可执行程序,使在没有Python环境的机器上运行
最新版是pyinstaller 3.1.1。支持python2.7和python3.3+。
可运行在Windows,Mac和Linux操作系统下。
但它不是跨编译的,也就是说在Windows下用PyInstaller生成的exe只能运行在Windows下,在Linux下生成的只能运行在Linux下。
pyinstaller在windows下的安装
使用命令pip install pyinstaller即可
在windows下,pyinstaller需要PyWin32的支持。当用pip安装pyinstaller时未找到PyWin32,会自动安装pypiwin32。
打包
打包的app里并不包含任何源码,但将脚本的.pyc文件打包了。
基本语法:
pyinstaller options myscript.py
常用的可选参数如下:
--onefile 将结果打包成一个可执行文件
--onedir 将所有结果打包到一个文件夹中,该文件夹包括一个可执行文件和可执行文件执行时需要的依赖文件(默认)
--paths=DIR 设置导入路径
--distpath=DIR 设置将打包的结果文件放置的路径
--specpath=DIR 设置将spec文件放置的路径
--windowed 使用windows子系统执行,不会打开命令行(只对windows有效)
--nowindowed 使用控制台子系统执行(默认)(只对windows有效)
--icon=<FILE.ICO> 将file.ico添加为可执行文件的资源(只对windows有效)