用Pyinstaller打包时遇到No module named win32timezone问题

用Pyinstaller打包时遇到No module named win32timezone问题用 Pyinstaller 打包时遇到 No module named win32timezon 问题 Pyinstaller 使用方法 我遇到的问题 解决办法 利用 tkinter python pyinstaller 实现了小工具的项目 没有 pyinstaller 打包时程序没有问题 打包后运行 exe 过程中会在控制台打印错误 Pyinstaller 使用方法

用Pyinstaller打包时遇到No module named win32timezone问题

Pyinstaller使用方法

我遇到的问题

解决办法

利用tkinter+python+pyinstaller实现了小工具的项目,没有pyinstaller打包时程序没有问题,打包后运行.exe过程中会在控制台打印错误。

Pyinstaller使用方法

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

单个py文件打包格式: pyinstaller -F test.py

多个.py文件打包命令格式如下 :

pyinstaller [主文件] -D -p [其他文件1] -p [其他文件2] --hidden-import [自建模块1] --hidden-import [自建模块2]

链接:Pyinstaller参数说明
使用-D 参数打包,会在根目录下的dist目录中生成一个文件夹,存放生成的 xxx.exe文件以及相关的依赖文件 (推荐使用-D 打包,-F 是打包成单一.exe文件)

我遇到的问题

我的项目结构:


打包命令如下:

(test) D:\ProgramData\NewTachometer>pyinstaller -D -n volemeter -i ana.ico  ma
in.py -p mainFunc.py -p GlobalVar.py -p calendarModule.py -p SiftPic.py -p CarsD
ata.py -p GenerateExcel.py --hidden-import mainFunc --hidden-import GlobalVar --
hidden-import calendarModule --hidden-import SiftPic --hidden-import CarsData --
hidden-import GenerateExcel

打包成功,没有报错:


运行.exe程序时,在控制台打印错误信息如下:


从打印信息知道,是因为没有导入win32timezone模块从而发生错误的。检查代码发现,是由于从.mdb数据库文件中读出的时间信息pywintypes.datetime(2019, 3, 12, 12,33, 48, tzinfo=TimeZoneInfo(‘GMT StandardTime’, True) 。

解决办法

解决问题:
在CarsData.py导入win32timezone模块

import win32timezone

重新打包,再运行就没问题了!!!

留下一个疑问: 为什么打包之前代码没有导入win32timezone模块但运行没有问题,打包后就有问题了? 没有搞清楚…

编程小号
上一篇 2025-08-15 18:51
下一篇 2025-03-18 08:30

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/133120.html