python2打包exe 以及一些运行出错的问题

python2:
python2.7直接安装pyinstaller会报错,版本4与python2不兼容,所以我们安装时需指定兼容的pyinstaller版本号。安装命令如下:

pip install pyinstaller==3.2.1

py2exe 安装命令

pip install py2exe==0.6.9 

打包命令:
比如test.py里面装的是入口函数

Pyinstaller -F test.py => 打包exe, Pyinstaller -F -w test.py=> 不带控制台的打包, Pyinstaller -F -i xx.ico test.py=>打包指定exe图标打包平常我们只需要这三个就好了,足够满足所有需求了。

运行出错的问题

  1. sys.path.append的问题
    有一种情况一定会出现pycharm运行没问题, 打包exe出错, 那就是
    我们使用sys.path.append() 添加一个文件夹到sys.modules中, 然后用该文件夹中的文件.
文件结构
C:\test1
	mian.py

C:\test2
	tools.py

错误流程: 
tools.py中 import time, 而main.py中没有import
在main中通过
sys.path.append(r'C:\test2')
import tools
这样, 打包执行必然出错. 

解决方法: 
我们需要把tools文件中import 的modules在main中也要全部import一遍才行, 就像下面这样
import time
sys.path.append(r'C:\test2')
import tools

这种情况下pycharm直接跑没问题, 如果打包成exe, 那么就会有问题

  1. 文件夹路径的问题
    pycharm和exe中获取文件夹路径的方法不一样
# exe中获取文件所在目录
os.path.dirname(os.path.realpath(sys.executable))

# pycharm中获取文件所在文件目录
os.path.dirname(os.path.abspath(__file__))
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值