py打包exe,遇到的坑

1、运行exe总是提示某个模块不存在,其实是引用的方法不对

当要打包的exe程序涉及的文件目录很多,目录之间存在比较多的引用关系时,要注意引用的正确性,否则打包后,运行exe时会提示模块不存在

最好要打包的主程序文件放在工程的最外层,这样引用的时候把工程当成根目录,只需要用from...import去引用其他目录的文件,from后跟的是类文件所在的目录层级,import后是类文件名称(目录下要有init文件)。

 

2、获取文件路径时,获取到临时文件路径

 

有些程序包含了数据文件夹,不能直接按资源文件方式打包,需要在执行文件所在的文件夹内创建这些数据文件。一般情况下在脚本中我们可以使用os.path.split(os.path.abspath( __file__))来的到code.py的路径,然后拼接得到数据文件夹。但之后使用pyinstaller -F code.py打包成单个exe文件,在未读取数据文件夹的情况下运行正常,一旦打开数据文件,就会闪退,命令行窗口会显

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值