在节前的最后一天,解决了打包过程中遇到的所有问题,可以成功运行了!真是个好彩头,希望新的一年一切顺利!

  以下是在使用cx_freeze过程中遇到的问题及解决办法(Win7)

  1. 问题描述:运行exe,启动无数个主程序,导致系统无法使用

     原因:在程序中使用了multiprocessing的包

     解决办法:在主文件if __name__ == "__main__":后,添加multiprocessing.freeze_support(),一定要在添加在最开始处

  2. 问题描述:运行后,提示在freeze_support中sys.stdout.flush处异常

            

    原因:使用的PyQT作为界面,没有控制台

    解决办法:在调用multiprocessing.freeze_support()前,重定向stdout和stderr,添加:sys.stdout = io.StringIO()和 sys.stderr =  io.StringIO()

  3.使用shelve模块,IDE下调试可以正常使用,打包后无法使用

    原因:shelve 的 open 函数在运行中还会装入其它的数据库管理模块,无从了解还需要哪些额外的包,故在打包时就漏掉了一些必要的模块

    解决办法:修改打包脚本,添加如下内容:

packages = []
for dbmodule in ['dbhash', 'gdbm', 'dbm', 'dumbdbm']:
    try:
        __import__(dbmodule)
    except ImportError:
        pass
    else:
        # If we found the module, ensure it's copied to the build directory.
        packages.append(dbmodule)

options = {
    'build_exe': {
        'includes': 'atexit',
        "packages": packages
    }

}

4.使用inspect.getsourcelines异常OSError: could not get source code

  原因:打包后,都是pyc文件,没有源代码,导致动态获取代码失败

  解决办法:将包含所需源码的py文件打包到library.zip文件中,在‘build_exe'参数中,增加'zip_includes':['path\\source.py']

  

转载于:https://www.cnblogs.com/xiaoyu-10201/p/5184110.html

Python 打包工具cx_freeze 问题记录及解决办法相关推荐

  1. python打包工具 cx_Freeze介绍

    原理 Python 脚本在装有 Python 的系统中可以直接双击运行,但绝大多数普通用户并没有配置此类环境,而编译为可执行二进制文件后,用户无需预先安装 Python 及依赖库即可像运行普通程序一样 ...

  2. Python打包工具Pyintealler打包py文件为windows exe文件过程及踩坑记录+实战例子

    Python打包工具Pyintealler打包py文件为windows exe文件过程及踩坑记录+实战例子 目录 Python打包工具Pyintealler打包py文件为windows exe文件过程 ...

  3. python打包工具报错_Python打包发布神器—Pyinstaller

    一前言 在windows平台学习python的过程中,你肯定会遇到需要把.py脚本打包成.exe的情形,如此,至少有两方面的好处:第一,你的代码保密性更好,其他人不能直接看到python代码:第二,打 ...

  4. Maven 打包报“java.lang.StackOverflowError”错解决办法

    Maven 打包报"java.lang.StackOverflowError"错解决办法 1.在命令行执行 2.在IDEA集成开发工具中执行 1.在命令行执行 平台:windows ...

  5. PYTHON -MYSQLDB安装遇到的问题和解决办法

    PYTHON -MYSQLDB安装遇到的问题和解决办法 参考文章: (1)PYTHON -MYSQLDB安装遇到的问题和解决办法 (2)https://www.cnblogs.com/gaoshanx ...

  6. Pycharm中无法导入各种Python模块,pip不能更新的解决办法

    一.Pycharm中无法导入各种Python模块,pip不能更新的解决办法 1.先用python -m pip uninstall pip 将之前版本的pip卸载 2.在官网上下载pip压缩包,记得下 ...

  7. Python如何安装模块,python模块安装失败的原因以及解决办法

    前言 今天来给刚开始学习python的朋友讲解一下 如何安装python模块, python模块安装失败的原因以及解决办法 很多朋友拿到代码之后,就开始复制粘贴 --> 然后右键进行运行 结果就 ...

  8. python解码中文文本报错的解决办法

    python解码中文文本报错的解决办法 1.报错内容 UnicodeDecodeError: 'gbk' codec can't decode bytes in position 50-51:ille ...

  9. python中unexpected indent报错的解决办法

    python中unexpected indent报错的解决办法 在我们初步学习pyton的时候,由于对python语言的学习掌握不充分,则会导致所编写的代码,运行时候报错.比如,容易报错的unexpe ...

最新文章

  1. CSS漂亮盒子(上)
  2. python 基础笔记十一 - random模块
  3. Egret 生成 自带EUI 的微信小游戏 踩坑!
  4. 基本的Testbench的搭建
  5. 4款深度学习框架简介,初学者该如何选择?
  6. 一个没有停止的android闹钟,一旦开始就要把歌唱完 .
  7. java串口设备中断_利用DMA双缓冲或半完成中断实现串口不定长数据的接收
  8. JAVA大数据习题Week2
  9. 基于点云的骨骼感知三维人体形状重建
  10. PDF 解锁(unlock)
  11. 以太网知识3:以太网芯片MAC和PHY的关系
  12. 视频教程-JavaScript打飞机小游戏视频教程-JavaScript
  13. 使用公众号快速申请小程序的流程
  14. 2020南京航空航天大学计算机科学与技术学院软件工程复试/面试经验分享
  15. AS608指纹模块简要说明
  16. 基于逻辑回归(Logistic Regression)的糖尿病视网膜病变(Diabetic Retinopathy)检测
  17. Bugku旧平台web writeup
  18. 项目分包后出的测评报告能盖cnas/cma标识章吗
  19. 防止开发人员开发后门程序,数据库安全之应用程序调用的危险
  20. 看看远处,也许可以恢复视力。

热门文章

  1. C语言 底层IO 输入输出
  2. Pandas 分割字符串
  3. struts文件上传 java_Struts上传文件
  4. 考研数学三考摆线吗_考研数学草稿纸发几张?可以多打几张准考证当草稿纸用吗?...
  5. VMware NSX组件构建矩阵
  6. Java虚拟机学习总结(3)——JDK内置工具(jps、jstack、jmap、jstat)使用详解
  7. Myeclipse学习总结(2)——MyEclipse快捷键大全
  8. mysql中php编程实例_PHP连接MYSQL数据库实例代码
  9. 即插即打!教你快速上手数码复合机USB打印
  10. 慢连接攻击的原理和防范