Skip to main content
 首页 » 编程设计

python之如何读取 Python 中的特定列和行

2025年05月04日14xxx_UU

Timestamp SP DP
20-03-2017 10:00:01 50 60.5
20-03-2017 10:10:00 60 70
20-03-2017 10:40:01 75 80
20-03-2017 11:05:00 44 65
20-03-2017 11:25:01 98 42
20-03-2017 11:50:01 12 99
20-03-2017 12:00:05 13 54
20-03-2017 12:05:01 78 78
20-03-2017 12:59:01 15 89
20-03-2017 13:00:00 46 99
20-03-2017 13:23:01 44 45
20-03-2017 13:45:08 80 39

import csv     
 
output = [] 
 
f = open( 'test.csv', 'r' ) #open the file in read universal mode 
for line in f: 
    cells = line.split( "," ) 
    output.append( ( cells[ 0 ], cells[ 1 ] ) ) #since we want the first, second column 
print (output) 

如何读取特定列和特定行?

期望的输出:

我只想要第一列和两行;

Timestamp SP
20-03-2017 10:00:01 50
20-03-2017 10:10:00 60

怎么做?

请您参考如下方法:

使用您的 csv 模块,并计算您的行数(使用 enumerate() function 或使用 itertools.islice() 来限制读取的数量:

import csv 
 
output = [] 
 
with open( 'test.csv', 'r', newline='') as f: 
    reader = csv.reader(f) 
    for counter, row in enumerate(reader): 
        if counter > 2: 
            # read only the header and first two rows 
            break 
        output.append(row[:2]) 

或使用islice():

import csv 
from itertools import islice 
 
with open( 'test.csv', 'r', newline='') as f: 
    reader = csv.reader(f) 
    output = list(islice((row[:2] for row in reader), 3))