【发布时间】:2012-08-23 03:35:32
【问题描述】:
我正在使用 python 开发一个项目,其中包含许多不同的 python 文件和必须安装的额外库,我目前正在尝试编译 32 位版本(我们目前只有 64 位 .exe )。
但是,尽管在运行常规 python 文件时一切正常,但在运行已编译的 .exe(使用 py2exe 编译)时,我不断收到错误消息:
Traceback (most recent call last):
File "fredchat.py", line 23, in <module>
File "fcio.pyc", line 20, in <module>
ImportError: No module named shell
fredchat.py 正如预期的那样,有一个
import fcio
第 23 行的命令。然而,在 fcio.py 中甚至没有提到“shell”这个词!
我们的 setup.py 几乎是基本的:
from distutils.core import setup
import py2exe
setup(console=['fredchat.py'])
很遗憾,我无法提供任何实际代码,A. 因为它很长,B. 因为项目负责人对我们何时提供什么代码非常严格(可以理解)。
【问题讨论】:
-
不应该是
import fcio而不是import fcio.py吗? -
呃,是的。谢谢你,我为那个愚蠢的错误道歉。 >.
-
您的 .pyc 文件是从 64 位 Python 生成的吗?尝试删除所有 .pyc 文件,然后再次运行。
-
fcio 的第 20 行完全空白;我尝试删除 .pyc 文件,但仍然有问题。有没有办法强制它在 py2exe setup.py 中包含 shell 模块?
标签: python shell 32-bit py2exe importerror