所以我仍在学习Python,并且今天正在学习如何读取文件、csv 文件。我刚刚观看的课程告诉我,使用
csv.reader(filename)
返回一个列表。
所以我写了下面的代码:
import csv
my_file = open(file_name.csv, mode='r')
parsed_data = csv.reader(my_file)
print(parsed_data)
它打印的是
<_csv.reader object at 0x0000000002838118>
如果它输出的是一个列表,我不应该得到一个列表,即类似这样的东西吗?
[value1, value2, value3]
你得到的是一个iterable https://wiki.python.org/moin/Iterator,即一个将为您提供一系列其他对象(在本例中为字符串)的对象。您可以将其传递给for
循环,或使用list()
获取实际列表:
parsed_data = list(csv.reader(my_file))
它以这种方式设计的原因是,它允许您处理大于计算机内存量的文件(或者如果您要加载所有文件,则文件大到足以消耗不方便的内存量)将其内容放入列表中)。对于可迭代对象,您可以选择一次查看一个元素,例如在阅读下一个之前,请再次将其从内存中删除。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)