错误:迭代器应该返回字符串,而不是_io.TextIOWrapper(是否以文本模式打开文件?)

2024-09-29 00:19:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我从python 3.6.1开始,我想用以下代码阅读csv文档:

f = open ("mon_fichier.csv"),"r"

import csv

lecteur = csv.DictReader(f,delimiter=";")

for ligne in lecteur :
    print (ligne)

f.close()

我收到了这个错误信息

^{pr2}$

你知道为什么吗?在


Tags: csv代码in文档importforcloseopen
1条回答
网友
1楼 · 发布于 2024-09-29 00:19:00

注意语法:

f = open ("mon_fichier.csv"),"r"

意味着type(f) == tuple,也就是说,它是一个带有文件句柄和"r"字符串的2元组。你的意思是:

^{pr2}$

或者,由于"r"是默认模式,您可以只执行以下操作:

f = open("mon_fichier.csv")

实际上,使用上下文管理器是最佳实践,因此您应该:

import csv

with open("mon_fichier.csv") as f:
    lecteur = csv.DictReader(f, delimiter=";")
    for ligne in lecteur :
        print(ligne)

相关问题 更多 >