访问csv文件第N行的最佳方法

访问csv文件第N行的最佳方法,第1张

访问csv文件第N行的最佳方法

它没有什么区别,但是使用起来

enumerate
要比使用自己的计数器变量稍微清洁一些。

for i, row in enumerate(reader):    if i == N:        print("This is the line.")        print(row)        break

您也可以使用

itertools.islice
针对这种情况设计的方案-访问特定的可迭代切片,而无需将整个内容读入内存。它应该比遍历不需要的行更有效率。

with open(path, 'r') as f:    N = int(input('What line do you need? > '))    print("This is the line.")    print(next(itertools.islice(csv.reader(f), N, None)))

但是,如果您的CSV文件很小,只需将整个内容读入一个列表即可,然后您可以按照常规方式使用索引来访问该列表。这还有一个优点,您可以以随机顺序访问多个不同的行,而不必重置csv阅读器。

my_csv_data = list(reader)print(my_csv_data[N])


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存