示例:

需要打包的是 ReadConfig.py 文件,同文件夹下调用了Interface.py文件,ui文件夹下调用了 Ui_config.py和Ui_Error.py文件,Interface.py又调用了fileread文件夹中的文件

不要将入口程序写在__init__.py文件中,否则打包可以成功,但是无法运行,cmd运行也不报错,具体原因未知

在文件夹处打开cmd,输入:

pyinstaller $IncludePath$ $FileName$ 
  • IncludePath:所有需要引用py的文件夹 -p ''文件夹1" -p "文件夹2" ......

    英文双引号最好加上(可以将文件夹直接拖入cmd窗口中),不然程序路径中出现空格时会出现问题,也不要使用 -p path0:path1:path2... 有时也会出现问题

  • FileName: 程序入口文件

示例的命令如下:

pyinstaller -p "F:\CODE\python\eric6_workspace\ReadConfig\ui" -p "F:\CODE\python\eric6_workspace\ReadConfig\fileread" ReadConfig.py

如果打包成功会在dist子文件夹中出现可执行文件

如果能够成功运行,则表明成功,但此时的程序会出现后台控制窗口,如果要去掉可以加上参数 “--noconsole”,打包前最好清理build和dist文件夹,不然可能会无效

pyinstaller -p "F:\CODE\python\eric6_workspace\ReadConfig\ui" -p "F:\CODE\python\eric6_workspace\ReadConfig\fileread" ReadConfig.py --noconsole

如果想打包成一个exe可以 -p 前添加 -F参数,打包前同样最好清理以下

pyinstaller -F -p "F:\CODE\python\eric6_workspace\ReadConfig\ui" -p "F:\CODE\python\eric6_workspace\ReadConfig\fileread" ReadConfig.py --noconsole

其它参数可以参考:

https://pyinstaller.readthedocs.io/en/stable/usage.html#options

运行失败

如果程序运行时一闪而过,或者出现failed to execute script,打开一个cmd窗口,将程序拖入cmd中按Enter运行,例如本文去掉第二个路径,会报以下错误:

这时候把需要的模块路径在打包参数中添加就好了,其他问题还没碰到,欢迎探讨

windows下pyinstaller打包踩坑记录的更多相关文章

  1. ubuntu 下安装docker 踩坑记录

    ubuntu 下安装docker 踩坑记录 # Setp : 移除旧版本Docker sudo apt-get remove docker docker-engine docker.io # Step ...

  2. Windows+Apache+Python+Django 踩坑记录

    摘要 使用Python进行Web项目开发:相对于主流三大Web端解决方案(Java/.NET/PHP) Python在某些方面具有一定的优势,相对 Java/.NET 有更轻量级的部署方案,相对PHP ...

  3. Win10自带Ubuntu子系统下Mysql安装踩坑记录

    linux系统为win10自带Ubuntu子系统 错误的安装过程 我按照一般的方法安装mysql,安装步骤如下 1.升级源 $ sudo apt-get update 2.安装mysql $ sudo ...

  4. 使用Windows下的git工具往github上传代码 踩坑记录

    使用Windows下的git工具往github上传代码 踩坑记录 背景 由于以前接触的项目都是通过svn进行版本控制,现在公司项目使用git,加上自己平时有一个练手小项目,趁着周末试着把项目上传到自己 ...

  5. 复杂业务下向Mysql导入30万条数据代码优化的踩坑记录

    从毕业到现在第一次接触到超过30万条数据导入MySQL的场景(有点low),就是在顺丰公司接入我司EMM产品时需要将AD中的员工数据导入MySQL中,因此楼主负责的模块connector就派上了用场. ...

  6. Unity AssetBundle 踩坑记录

    Unity AssetBundle 踩坑记录 editor 下选择什么平台的 ab 加载 Material doesn't have a color property '_Color' UnityEd ...

  7. manjaro xfce 18.0 踩坑记录

    manjaro xfce 18.0 踩坑记录 1 简介1.1 Manjaro Linux1.2 开发桌面环境2 自动打开 NumLock3 系统快照3.1 安装timeshift3.2 使用times ...

  8. 你真的了解字典(Dictionary)吗? C# Memory Cache 踩坑记录 .net 泛型 结构化CSS设计思维 WinForm POST上传与后台接收 高效实用的.NET开源项目 .net 笔试面试总结(3) .net 笔试面试总结(2) 依赖注入 C# RSA 加密 C#与Java AES 加密解密

    你真的了解字典(Dictionary)吗?   从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ...

  9. SpringBoot+SpringSecurity+Thymeleaf认证失败返回错误信息踩坑记录

    Spring boot +Spring Security + Thymeleaf认证失败返回错误信息踩坑记录 步入8102年,现在企业开发追求快速,Springboot以多种优秀特性引领潮流,在众多使 ...

随机推荐

  1. Hadoop 在启动或者停止的时候需要输入yes确认问题

    启动或者停止hadoop的时候,信息如下: Stopping namenodes on [hadoop1 hadoop2] The authenticity of host 'hadoop2 (172 ...

  2. es6学习4:async和await

    async async函数返回一个 Promise 对象,可以使用then方法添加回调函数.当函数执行的时候,一旦遇到await就会先返回,等到异步操作完成,再接着执行函数体内后面的语句. funct ...

  3. Maven的具体使用和优点

    1.Apache软件基金会提供的项目自动化构建和项目管理软件. 基于项目对象模型(POM)概念,Maven利用一个中央信息片段能管理一个项目的构建.报告.文档等步骤. 官方网站:http://mave ...

  4. Don't always upset yourself !

  5. 一、JavaScript基础

    一.区分大小写 ECMAScript中的一切(变量.函数名和操作符)都区分大小写,(js用于行为交互.数据交互.逻辑交互) 二.标识符 指变量.函数.属性的名字,或者函数的参数 命名规则:1.第一个字 ...

  6. 团队作业-Beta冲刺(4/4)

    队名:软工9组 组长博客:https://www.cnblogs.com/cmlei/ 作业博客:https://edu.cnblogs.com/campus/fzu/SoftwareEngineer ...

  7. rrr

    # coding:utf-8 import pika username = 'feng' password = 'nihao' host = '192.168.1.144' credentials = ...

  8. 爬虫中Requests模块

    Requests: 让 HTTP 服务人类 虽然Python的标准库中 urllib2 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests 自称 “ ...

  9. mybatis:字符串转成数组拼接成SQL

    <foreach item="item" index="index" collection="str.split(',')" open ...

  10. [LeetCode] 122. Best Time to Buy and Sell Stock II 买卖股票的最佳时间 II

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...