详解如何将python3.6软件的py文件打包成exe程序
作者:云水禅心_心一 发布时间:2022-09-26 00:10:21
在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstaller和cx_Freeze进行打包的方法。关于cx_Freeze打包的方法,可以参考windows下cx_Freeze生成Python可执行程序中的方法。由于方法主要是可以用于Python3.3版本的,高于该版本的Python无法使用。在我尝试的过程中,碰到的一个问题是:
安装cx_Freeze-4.3.3,找不到cxFreeze.bat
解决的方法是,在cmd命令行操作下,切换至放置cx_Freeze-4.3.3文件的Python安装目录下scripts目录下,使用以下代码自动生成:
python cxfreeze-postinstall
由于我安装的Python版本是3.6.2版本的,版本相对较新,cx_Freeze还没有更新版本至3.6版本。在我尝试很多次数失败后,决定采用pyinstaller来进行文件打包的方法。
下载pyinstaller
采用命令行操作的办法
在cmd命令行中,输入代码:
pip install pyinstaller
或者采用更新、升级的方法:
pip install --upgrade pyinstaller
采用下载文件+cmd操作的办法
首先,前往PyInstaller网站下载:http://www.pyinstaller.org/downloads.html
下载时,要注意你安装的Python是多少版本的,有稳定版和不稳定版的,Python3.6只有不稳定版本的。其中绿色方框的是适用于linux操作系统下的,红色方框是适用于Windows系统下的。
进行解压缩、放置和安装
下载后,将压缩文件解压缩在Python安装目录下,进入该文件:
该目录中含有setup.py,同时在cmd中进入该目录:
输入命令:
python setup.py install
并按下回车键,会看到代码迅速执行,会进行安装pyinstaller,显示如下状态,看到“Finished processing dependencies for PyInstaller==3.3.dev0+41c426f6d”,即安装成功:
使用pyinstaller打包py文件成exe程序
打包文件成exe程序
将cmd的目录切换至(命令:cd 文件路径(注意空格))需要打包的py文件目录下:
并输入代码,格式为使用命令:pyinstaller -F 文件名(带后缀py):
pyinstaller -F test.py
常用参数说明:
–icon=图标路径
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
pyinstaller -h 来查看参数
回车后,代码迅速操作,直到操作结束。
返回目标文件目录,发现该目录下生成了.spec文件test.spec:
由此,py文件打包好为exe文件。pyinstaller 改变生成exe程序的图标
pyinstaller -F --icon=my.ico test.py
my.ico 是一个图标名,和当前的test.py文件在同一个目录下
来源:https://blog.csdn.net/lqzdreamer/article/details/77917493
猜你喜欢
- $ cat checkserver.py#!/usr/bin/python# -*- coding: utf-8 -*- impo
- 如下所示:# -*- coding: UTF-8 -*-import numpy as npimport osfrom scipy.misc
- 在使用Tkinter做界面时,遇到这样一个问题:程序刚运行,尚未按下按钮,但按钮的响应函数却已经运行了例如下面的程序:from Tkinte
- 本文实例讲述了Python打印斐波拉契数列的方法。分享给大家供大家参考。具体实现方法如下:#打印斐波拉契数列#!/usr/bin/pytho
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- 本文实例讲述了php实现搜索一维数组元素并删除二维数组对应元素的方法。分享给大家供大家参考。具体如下:定义一个一维数组一个二维数组如下$fr
- 一、垃圾还是经典网页技术更新很快,一个网站的界面设计寿命仅仅2-3年而已。不管是垃圾还是精品,都没有所谓的经典。经典只存在于是哪个首次成功创
- 如图所示,我们要计算任意两个向量之间的夹角。(图中的坐标数字是估计值,随手给定)python代码如下import math AB = [1,
- 本文主要介绍的是Python高阶函数与装饰器函数的相关内容,分享给大家,下面话不多说了,来一起看看详细的介绍吧高阶函数1、可以使用函数对象作
- asp中使用addnew方法添加一条记录后,我们经常使用取得自递增的ID,而使用bookmark很容易实现这样的功能。rs.open&nbs
- 首先,你需要去有道翻译API官网去申请key:http://fanyi.youdao.com/openapi?path=data-mode得
- 刚看到吴磊同学的一些关于购物车的想法,正巧本人丁学对电子商务这方面比较熟悉,跳出来献丑了,希望对一些同行有些用处。本来想回复到下面的,结果发
- 代码: import os while True: dynamic = input('输入计算表达式:') if dynam
- 如下所示:#!/usr/bin/env python#-*- coding: utf-8 -*-"""[0,
- 本文实例讲述了python图像处理之反色实现方法。分享给大家供大家参考。具体如下:我们先加载一个8位灰度图像每一个像素对应的灰度值从0-25
- 基于pygame的飞机大作战小游戏,适合新手,不能直接运行,只能在命令行进入当前游戏目录,输入python game.py才能够运行,尚不知
- <script> Array.prototype.swap = function(i, j) { var temp = this
- 首先,你得下载SocksiPy这个.解压出来之后里面会有一个socks.py文件.然后你可以把这个文件复制到python安装目录里面的Lib
- python最值与下标最大值的下标winner = np.argmax(scores)多个最大值的下标(np.argwhere返回数组中非0
- 程序能实现什么a.完成gap值的自定义输入以及两条需比对序列的输入b.完成得分矩阵的计算及输出c.输出序列比对结果d.使用matplotli