4

最近,在尝试导入我编写的模块时,我遇到了表面上不应该发生的错误。这是我的想法,我在我的main.py文件中写入,我的层次结构如下所示:

starsearch/
  main.py
  parser/
    __init__.py
    parse.py

parser/ 中的__ init __.py文件是空的,但是当我在我的程序中尝试:

import parser

它返回一个AttributeError. 当我在parse.py, 中调用函数时会发生这种情况getstar()。或者

from parser import parse

它返回一个ImportError.

所以我的 Python 不承认它的parse.py存在?我做了一些研究,并且有一个__ init __.py空的文件应该可以解决问题,但我很难过。

4

1 回答 1

1

parser 是 python 中内置模块的名称。当你写

import parser

您导入内置模块。由于该模块不包含 getstar() 函数或解析模块,您会得到 AttributeError 或 ImportError

尝试将“解析器”目录的名称更改为其他任何名称,它应该可以工作。不需要空的init .py 文件

于 2012-08-18T10:45:03.047 回答