A. python项目文件(多个子文件,.py文件等)如何用pyinstaller打包为可执行exe文件
文件构成
使用pyinstaller打包的时候,仅打包.py文件,其余依赖项只需在打包完成后,拷入打包生成的根目录即可。
多文件打包
命令格式如下,下命令为一条命令,为方便显示做了分行处理:
pyinstaller [主文件] -p [其他文件1] -p [其他文件2]
--hidden-import [自建模块1]
--hidden-import [自建模块2]
# 以上为一整条命令
以上文图中结构为例,在根目录打开命令窗口,输入命令:
pyinstaller main.py -p mysql.py -p other.py --hidden-import mysql --hidden-import other
在目录结构:“程序根目录distmain” 下可以找到生成的main.exe。将其他依赖文件拷贝进入“程序根目录distmain” 下,即可运行。
B. 如何打包python文件
最近写了一个小小的程序,需要进行封装exe,为了简单,就直接用了pyinstaller这个模块,对于python3.6版本的童鞋来说,简直方便的不要。下面就给大家介绍一下如何用pyinstaller去封装程序为exe程序。
首先,需要安装一下pip这个应用,这个已经在前面的文章中说过了,windows和linux都有请借鉴windows和linux。
第二步,安装好pip之后,在cmd命令窗口中输入pip install pyinstaller即能安装上pyinstaller,那么接下来要介绍一下关于pyinstaller几个指令了:
-w指令
直接发布的exe应用带命令行调试窗口,在指令内加入-w命令可以屏蔽;
-F指令
注意指令区分大小写。这里是大写。使用-F指令可以把应用打包成一个独立的exe文件,否则是一个带各种dll和依赖文件的文件夹;
-p指令
这个指令后面可以增加pyinstaller搜索模块的路径。因为应用打包涉及的模块很多。这里可以自己添加路径。不过经过笔者测试,site-packages目录下都是可以被识别的,不需要再手动添加。
那么通常是使用-F指令,使用的语法是:pyinstaller -F (python程序名称).py
C. 求问怎么把一个python程序打包成apk
1.概述
Kivy是一套Python下的跨平台开源应用开发框架,官网,我们可以用
它来将Python程序打包为安卓的apk安装文件。以下是在windows环境中使用。
安装和配置的过程中会下载很多东西,确保你能够稳定地访问外网,另外推荐一个视频教程:Youtube
2. 步骤
第一当然是安装了Python,我的版本是Python 2.7.13,然后就是安装Kivy包:
官网有详细的Kivy包的安装步骤,按照该步骤走完就安装ok。
然后就是写一个简单的程序main.py测试一下:
import kivy
kivy.require('1.9.1')
from kivy.app import App
from kivy.uix.button import Button
class test(App):
def build(self):
return Button(text='hello world')
if __name__ == '__main__':
test().run()
运行截图:
运行成功,那开发环境基本没问题了。然后下面就是怎么将这个程序打包成apk。
首先需要安装虚拟机 VirtualBox,这个没问题,很快就装好了,然后Kivy官方制作了该虚拟机的映像(很体贴),下载后就直接能运行了,省去不少麻烦。下载地址,或者直接去官网下载:
下载并解压之后,打开VB并载入该文件夹下的虚拟机文件,然后运行(登录密码kivy):
进入到该系统中之后,就需要开始配置环境。官方指导
首先我们先在该系统中添加一个共享文件夹,这样可以和windows共享文件,在VB的设备->共享文件夹选项中有配置:
然后我们使用固定分配,在windows下某个路径新建一个文件夹后将其选择为共享文件夹,并选择自动挂载:
然后重新启动虚拟机就可以访问该共享文件夹了:
设置好了共享文件夹后,可以将之前写的测试程序main.py拷贝到该文件夹,然后在虚拟机中拷贝到桌面备用。
然后打开终端(cd到桌面),执行buildozer init命令,之后会在桌面上生成buildozer.spec的配置文件:
然后使用命令gedit buildozer.spec来编辑该文件,(如果没有gedit可以sudo apt-get install gedit来安装)
基本不用改什么,那个source.dir 需要注意,这是刚刚我们放在桌面上的main.py的路径。
然后运行buildozer android_new debug,接着就开始下载很多东西了,例如Android SDK,Android NDK之类,并且是需要访问外网的,自搭梯子。这个过程要很久,让我一度以为出了问题,然后我中午睡一觉起来就差不多了^^。
然后在它自动下载配置之后就会在桌面的bin文件夹下面生成了apk文件,可以安装在手机上试一下。
然后基本流程大概如此^^,详细可以去官网了解,我就是按照官网的步骤完成的。
D. 将Python程序打包成linux可执行文件
1.安装环境
首先我们要安装pip,命令如下:
使用的工具是 pyinstaller ,打开终端输入sudo pip install pyinstaller
2.打包程序
首先在打包之前检查一下我们的py文件是否可以正常执行,确认无误后进行打包 pyinstaller -F car_tkinter.py 或者 python3 -m PyInstaller -F main.py
3.执行文件
进入我们打包存放的文件夹,打开终端,执行语句 ./car_tkinter 或者 nohup ./car_tkinter> data.log &
E. 手把手教你给Python程序写图形界面,并且打包成exe文件
官网下载Python3,LZ的配置环境是Python3.6,PyCharm 2017.2.1
File->Settings->Tools->External Tools,点击+好配置好即可,LZ已经配置好了,刚开始是没有的
Program里面填designer.exe的位置,Working directory里面点击右面的Insert按钮,插入和图片一样的值即可
Program里面填python.exe的安装目录,Parameters里面填如下内容
Working directory点击右面Insert按钮插入相同内容即可
兴建一个项目,右键点击项目->External Tools->QtDesigner,弹出QtDesigner的图形界面如下,LZ拖入了2个按钮
这时你会发现多了一个untiled.ui文件,文件名LZ用的是默认的,右键点击这个ui文件->External Tools->PyUIC,这时文件夹下多了一个untitled.py文件,打开untitled.py,加入以下内容Ctrl+Shift+F10运行即可
untitled.py
运行结果
LZ用的是pyinstaller,pyinstaller不支持Python3.6,无奈又下载了一个Python3.5的环境,运行和打包在Python3.5下,工具用的是Python3.6下的,也不影响已经配置好的工具的使用,命令行中输入一下即可
在命令行中进入要打包的py文件所在的目录,输入一下命令
然后到py文件所在目录的dist文件中,打开exe,结果一闪而退,原来是找不到外部的动态链接库,输入一下命令,指明外部链接库
-F的效果是打包成一个单文件,-w的效果是取消控制台。
这个是我开发的,将doc文件批量转为docx的小工具,源码放在github上,大家可以参考
https://github.com/erlieStar/doc2docx
欢迎star
F. 怎么把python打包成一个程序
一、安装pyinsatller打开命令行窗口,输入如下指令
pip3 install pyinstaller
然后静待pyinstaller自动安装好
二、旁迟使用pyinstaller打包Python程序
在你的Python程序文件夹上(不点进去)按住shift并且右键,在弹出的选项中点击"在此处打开命令行窗口"或者“在此处打开PowerShell窗口”或者先进入命令行窗口,然后使用cd指令进入程序文件夹,示例:
cd G:\工程储存\Python工程\love
输入以下指令,开始打包
pyinstaller -F -w (-i icofile) filename
filename表示你的Python程序文件名
-w 表示隐藏程序运行时的命令行窗口(不加-w会有黑色窗口)
括号内的为可选参数,-i icofile表示给程毁尘序加上图标,图标必须为.ico格式icofile表示图标的位置,建议直接放在程序文件夹里面,这样子打包的时候直接写文件名就好输入完成,按回车,就会开始自动打包了,
第一次打包过程可能运余李比较缓慢输入
示例:pyinstaller -F -w -i favicon love.py
然后我们进入到程序目录里面会再看到一个名称为dist目录,打包好的exe程序就在里面
G. 使用PyInstaller打包Python程序
PyInstaller是一个用来将Python程序打包成独立可执行软件的工具,支持 Windows、Linux 和 Mac OS X。生成的可执行软件在没有Python的环境中可以直接运行,方便软件分发,进一步降低使用成本,提升使用效率。
下面演示如何使用 PyInstaller 将程序打包成Windows下的exe软件。
使用pip的方式进行安装,这样可以自动安装其他依赖库。
如果pip还未安装,请参考我的另一篇文章《 Python pip包管理工具 》
在cmd命令行控制台或者VS Code内置的终端输入命令行生成应用,首先将当前路径切换到Python程序所在的路径(如下示例的SubOcr.py文件在python文件夹下的SubOcr文件夹内),然后输入生成应用的命令。
命令执行成功后在 I:workpythonSubOcrdist 文件夹下生成了SubOcr文件夹,里面包含了SubOcr.exe文件。整个SubOcr文件夹就是一个绿色软件,随便移动到任何位置都可运行。
实际上在用pyinstaller命令时会在Python程序的所在路径生成一个后缀为spec的同名文件,然后根据此文件的配置生成应用,这就是PyInstaller的原理。这样做的好处是spec保存了生成应用的配置,每次重新生成应用时可以省略指定参数,尤其是指定了其他的资源、程序库时。我们可以通过以下命令先生成spec文件。
pyi-makespec的命令参数跟pyinstaller的相同,在生成spec文件后可以对其部分选项进行编辑(可以用VS Code或自带的记事本编辑),添加更多参数,然后再用pyinstaller命令生成应用。
spec文件的主要选项:
上面示例的SubOcr用到了opencc和opencv-python,其中opencc下的数据文件和opencv-python下的dll文件在生成应用时不会自动导入(缺少这些文件应用无法正常使用),因此需要在spec文件中指定路径。对spec文件的修改如下:
以上便是PyInstaller打包Python程序的全过程,如果在此过程中遇到问题,可以在评论区留言,定当知无不言,言无不尽。
H. python3怎么打包成exe
有人说py2exe太过陈旧缺少维护操作不便,推荐PyInstaller项目
可用一句命令打包:
pyinstaller -F -w -i manage.ico app.py
-F:打包为单文件
-w:Windows程序,不显示命令行窗口
-i:是程序图标,app.py是你要打包的py文件
另外需要pywin32。
安装方法:
先跑pip install pywin32再跑pip install pyinstaller即可,多么简单。