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()返回是一个迭代类型,需要通过循环或迭代器访问
posted @ 2021-05-21 11:03  Amanda520yl  阅读(631)  评论(0)    收藏  举报