python 打包成exe中的各种坑

本文讲述了在将Python GUI程序打包成exe过程中遇到的各种问题,包括选择PyQt作为GUI库,使用sqlite作为数据库,以及在打包过程中遇到的依赖缺失问题。通过尝试不同打包工具如py2exe、pyinstall、cx-freeze,最终通过手动添加matplotlib、numpy、scipy、sklearn等库的文件以及PyQt的sql驱动解决了问题。尽管生成的exe文件大小近300MB,但成功实现了程序在Windows系统的运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先说下感慨吧,对于程序员来讲,Google和stackoverflow真是不可缺少的东西,我感觉没这俩我写不了程序。


尽管现在贬win系是主流,但是在学校做项目还是离不开Windows,最终大家的成果基本都要成为一个在win系统下可执行的程序,不然没法展示给别人看,毕竟跑window的电脑才是大多数。写GUI软件用python并不是好主意,但是用C++的话太繁琐,耗时太长,C#我也没学过,现学时间也不允许,只能上python了。
1.python的做GUI的包也挺多,不过PyQt名头最大,就选它了,主要是考虑到C++版本的Qt资料比较多,可以相应参考下。
2.由于我的数据量不大,数据库方面就不选高大上的,sqlite就能满足,其实还考虑用excel或txt存储,不过想想这也太low了,而且也不方便找工作,跟面试说数据存储用excel估计直接就让你走人了。
3.综合下用到的主要如下

from PyQt4.QtGui import *
from PyQt4.QtCore import *
from PyQt4.QtSql import *
from sklearn import svm
import numpy as np
import matplotlib.pyplot as plt
import sys
import xlrd
import sqlite3

项目完成后就要打包发布了,python打包成exe主要有py2exe、pyinstall、cx-freeze.用过后发现大同小异,实际走下来真是一步N坑,总提示各种缺,
具体哪一步缺啥我也忘了,总之你要按他说的缺啥补啥的话就是个无底洞。我那是一顿搜啊,眼都快瞅瞎了,期间还考虑可能是打包程序不是最新的,想升级却发现又进了另一个坑,反正就是升级不行,在另一台没装cxfreeze的电脑上想装还装不上,最后还是回到原坑,经过各种尝试,基本断定问题就出在那几个包上,最终我也没找到完美的解决方案,我的方法是在最后打包完成后,把Python里的site-package文件夹下的matplotlib,numpy,scipy,sklearn放到生成好的文件夹里,然后程序终于跑起来了,这时还有个坑,pyqt的sql驱动他还没进去,再把site-packages-pyqt4-plugins下的sqldrivers文件夹也拷过去,终于大功告成了。
这样最终生成的有接近300M,没办法,忍了吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值