我在构建我的python 3.2脚本的exe验证时遇到了问题。该脚本需要pyserial并使用cx_freeze进行构建。但是,当我运行exe时,我得到:
Traceback (most recent call last):
File "C:\Python32\lib\site-packages\cx_Freeze\initscripts\Console3.py", line 27,
in <module>
exec(code, m.__dict__)
File "my_serial_program.py", line 1, in <module>
import serial
File "C:\Python32\lib\site-packages\serial\__init__.py", line 19, in <module>
from .serialwin32 import *
File "C:\Python32\lib\site-packages\serial\serialwin32.py", line 12, in <module>
from . import win32
ImportError: cannot import name win32
做一点窥探,Pyserial site-package有一个“win32.py”模块(除了serialwin32.py);但是,在cx_freeze生成的压缩库中,缺少win32.py。简单地放置一个pyc版本并不能解决问题。另外使用cx_freeze“includes = []”也不起作用。
有什么想法吗?我的问题是否有说服力(我对python相当新)?
答案 0 :(得分:0)
我有同样的问题。可以选择包含cx_Freeze ImportError: cannot import name和documentation for cx_Freeze
中提到的额外模块只需附加--include-modules serial.win32