我正在使用Python 3.2(用于构建和执行),这是我的问题。
我打算使用以下设置发送我的python应用程序:
有一个主脚本(比如Main.py
),它使用的是编译模块,比如说Module1.pyc
)。确切地说,目录结构是:
.\Main.py
.\__pycache__\Module1.cpython-32.pyc
当我使用python解释器运行主脚本时,它找不到具有以下错误的模块:
Traceback (most recent call last):
File "Main.py", line 10, in <module>
import Module1
ImportError: No module named Module1
请注意,我已将当前目录添加到PYTHONPATH
环境变量,并且是sys.path
的一部分。此外,还添加了内部__pycache__
目录,并在sys.path
中显示。
不确定为什么找不到Module1。我猜,这可能是因为文件名不同 - Module1.cpython-32.pyc?但是,那就是Python 3.2解释器生成它的方式。
答案 0 :(得分:9)
答案 1 :(得分:2)
如下所述,有两个步骤解决了这个问题: 步骤1:将..capache__目录中的Module.cpython-32.pyc文件复制到。 第2步:将文件重命名为Module.pyc
PS:感谢gecco分享细节。