Python csv.reader读取内容不正确
import csv # 使用列表的形式创建数据 l = [['姓名', '年龄'], ['张三', '4'], ['李四', '3']] with open('test.csv', mode='w', encoding='utf-8-sig', newline='') as csvfile: writer = csv.writer(csvfile) for line in l: writer.writerow(line) # 使用列表的形式读取数据 with open('test.csv', mode='r', encoding='utf-8-sig', newline='') as csvfile: reader = csv.reader(csvfile) print(reader) for i in reader: print(i)
结果:
<_csv.reader object at 0x000001C6BE7A7DC0> ['姓名', '年龄'] ['张三', '4'] ['李四', '3']
在读取列表的时候,
print(reader) 打印的结果是“<_csv.reader object at 0x000001C6BE7A7DC0>”
print(i)确能打印出正确的信息。
这是为何呢?
原来csv.reader()返回是一个迭代类型,需要通过循环或迭代器访问

浙公网安备 33010602011771号