Skip to main content
 首页 » 编程设计

python之读取 CSV 获取行数和 CSV 的前两行

2025年05月04日13zhwl

我假设我收到此错误是因为我正在读取同一个 CSV 两次(我不完全理解为什么这是一个问题)但我需要下面的代码来执行以下两件事.. .

1) 给我 CSV 中所有行的总数。

2) 给我数据的前两行,以便我显示给用户。

file = upload.filepath 
#I READ THE FILE 
file_read = csv.reader(file) 
 
#GET THE COUNT I.E. 100 ROWS 
row_count = sum(1 for row in file_read) 
 
#ADD TO DATA JUST THE FIRST TWO ROWS THAT I WILL USE TO DISPLAY BACK TO THE USER 
data = [] 
for i in range(2): 
    data.append(file_read.next()) 

我怎样才能做到这一点?

请您参考如下方法:

使用 islice 你可以:

from itertools import islice 
import csv 
 
with open('somefile') as fin: 
    csvin = csv.reader(fin) 
    firstn = list(islice(csvin, 2)) 
    rows = len(firstn) + sum(1 for row in csvin) 

这使您不必读取文件然后从头开始查找,并且会正确返回行数,并且文件会在之后或出现异常时自动关闭。