io.py
class IO:
def __init__(self):
self.ParsingFile = '../list'
def Parser(self):
f = open(ParsingFile, 'r')
print(f.read())
main.py
import sys
sys.path.insert(0, "lib/")
try:
import io
except Exception:
print("Could not import one or more libraries.")
exit(1)
print("Libraries imported")
_io_ = io.IO()
当我运行python3 main.py
时,我收到以下错误:
Libraries imported
Traceback (most recent call last):
File "main.py", line 11, in <module>
_io_ = io.IO()
AttributeError: module 'io' has no attribute 'IO'
知道出了什么问题吗?
答案 0 :(得分:4)
我的文件名为io
。似乎已经存在一个名为io
的包,这引起了混淆。
答案 1 :(得分:1)
您的包名称(io)与具有相同名称的Python库包冲突,因此您实际导入了系统包。
您可以打印io.__all__
。
将io.py更改为其他内容可能是避免类似问题的最佳方法。否则,您可以使用绝对路径。
答案 2 :(得分:0)
试
from io import IO
在尝试从其他文件导入类时,这对我有用
这有更多信息:
Python module import - why are components only available when explicitly imported?