PyCharm中import csv报错:模块无reader属性(疑似循环导入)
解决csv模块导入的循环导入错误
你的代码本身没有问题,但报错的核心原因是你的脚本文件名和Python标准库的csv模块重名了。从报错路径D:\Python course\practice\venv\csv.py能看到,你把自己的代码文件命名成了csv.py。
错误原因说明
当你执行import csv时,Python会优先加载当前目录下的csv.py,而非系统自带的csv标准库模块。这就形成了循环导入:你的脚本导入了它自己,但你的脚本里并没有定义reader属性,因此触发AttributeError。
解决步骤
- 把你的脚本文件名改成其他名称,比如
csv_read_demo.py,绝对不要和Python标准库的模块名重名 - 如果当前目录下有自动生成的
csv.pyc文件,一并删除,避免缓存干扰 - 重新运行代码
你的代码:
import csv with open("names.csv", "r") as file: data = list(csv.reader(file)) print(data)
报错信息(翻译后):
Traceback (most recent call last): 文件 "D:\Python course\practice\venv\csv.py", 第1行, 于 <module> import csv 文件 "D:\Python course\practice\venv\csv.py", 第4行, 于 <module> data = list(csv.reader(file)) ^^^^^^^^^^ AttributeError: 未完全初始化的模块'csv'没有'reader'属性(很可能是循环导入导致)
内容的提问来源于stack exchange,提问作者str_name
相关产品推荐
相关产品推荐

