如何解决“ImportError: No module named mechanize”?

16 浏览
0 Comments

如何解决“ImportError: No module named mechanize”?

Python被安装在本地目录中。

我的目录树的形状是这样的:

(local directory)/site-packages/toolkit/interface.py

我的代码在这里:

(local directory)/site-packages/toolkit/examples/mountain.py

为了运行这个例子,我写了 python mountain.py,并且在代码中有:

from toolkit.interface import interface

之后我得到了错误:

Traceback (most recent call last):
  File "mountain.py", line 28, in ?
    from toolkit.interface import interface
ImportError: No module named toolkit.interface

我已经检查了 sys.path,在那里我有目录 /site-packages。此外,我在工具包文件夹中有一个 __init__.py.bin 文件,以指示给Python这是一个包。我还在示例目录中有一个 __init__.py.bin

我不知道为什么Python在 sys.path 中找不到文件。有什么想法吗?这可能是权限问题吗?我需要一些执行权限吗?

admin 更改状态以发布 2023年5月21日
0
0 Comments

会导入 __init__.py 文件吗?

(local directory)/site-packages/toolkit

你的每个目录都必须有一个 __init__.py 文件,以便使导入能够遍历你的目录结构。

0
0 Comments

根据你对orip帖子的评论,我猜这就是发生的事情:\n\n1. 你在Windows上编辑了__init__.py。\n\n2. Windows编辑器添加了一些非打印字符,可能是回车符(Windows的行尾是CR / LF;在Unix中只有LF),或者可能是CTRL-Z(Windows文件结束符)。\n\n3. 你使用WinSCP将文件复制到你的Unix计算机。\n\n4. WinSCP想:“这个文件有些不是基本文本;我会将.bin扩展名加入以指示二进制数据。”\n\n5. 缺少的__init__.py(现在被称为__init__.py.bin)意味着Python不认为toolkit是一个包。\n\n6. 你在适当的目录中创建__init__.py后一切正常……?

0