在cmd中:先cd到项目目录下再输入命令。例如:pyinstaller -F -w -i g:\2345Downloads\logo.ico login.py
/**
*附参数集合:
–icon=[图标路径](http://www.icontuku.com/)(pyinstaller -F --icon=my.ico XXXX.py)
-F 打包成一个exe文件
-w 小写,使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
-i 这里的i也是小写的,意思是忽略打包过程中遇到的错误,就是遇到错误也继续执行
*
*/
生成的文件放在同目录dist下。不加-F参数生成一堆文件,但运行快。压缩后比单个exe文件还小一点点。 加-F参数生成一个exe文件,运行起来慢。
# -*- mode: python -*-
block_cipher = None
a = Analysis(['login.py'],
pathex=['F:\\python_project_reveiw'],
binaries=[],
datas=[],
hiddenimports=['doTest.py', 'itemContent', 'queryDB.py', 'view.py', 'Applications.py', 'mainWindow.py'],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
[],
name='login',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
runtime_tmpdir=None,
console=False , icon='g:\\2345Downloads\\logo.ico')
1.Pic2py.py : 图片转为.py
import base64
def pic2py(picture_names, py_name):
"""
将图像文件转换为py文件
:param picture_name:
:return:
"""
write_data = []
for picture_name in picture_names:
filename = picture_name.replace('.', '_')
open_pic = open("%s" % picture_name, 'rb')
b64str = base64.b64encode(open_pic.read())
open_pic.close()
# 注意这边b64str一定要加上.decode()
write_data.append('%s = "%s"\n' % (filename, b64str.decode()))
f = open('%s.py' % py_name, 'w+')
for data in write_data:
f.write(data)
f.close()
if __name__ == '__main__':
pics = ["icon.ico", "weixin.gif", "alipay.gif"]
pic2py(pics, 'memory_pic') # 将pics里面的图片写到 memory_pic.py 中
print("ok")
2 在程序中引用
from memory_pic import *
def get_pic(pic_code, pic_name):
image = open(pic_name, 'wb')
image.write(b64decode(pic_code))
image.close()
get_pic(icon_ico, 'icon_ico')
# 在这里使用图片 icon.ico
os.remove('icon.ico')
1、在命令行使用pip命令安装pipenv库,用于创建虚拟环境
1
2、新建一个准备当环境的文件夹,并cd进入该文件夹
3、建立虚拟环境
1
4、进入虚拟环境(以下操作皆为虚拟环境下的操作)
1
5、安装.py文件用到的模块
1
6、安装pyinstaller模块,用于打包.py文件
1
7、使用pyinstaller打包文件
8、结果文件
运行完第7步之后,在目录下回生成‘dist’文件夹,里面存放的就是结果文件。
参考文献
#赶紧关注公众号【轻松学编程】,领取学习资源吧!