我需要找到第4列到CSV文件末尾的第三行。我该怎么办?我知道我可以找到第4栏中的值 行[3] 但我如何具体获得第三行?
答案 0 :(得分:3)
您可以将csv reader对象转换为列表列表......行存储在列表中,列表中包含列的列表。
所以:
csvr = csv.reader(file)
csvr = list(csvr)
csvr[2] # The 3rd row
csvr[2][3] # The 4th column on the 3rd row.
csvr[-4][-3]# The 3rd column from the right on the 4th row from the end
答案 1 :(得分:1)
您可以使用itertools.islice
提取所需的数据行,然后将其编入索引。
请注意,行和列的编号为零,而不是一个。
import csv
from itertools import islice
def get_row_col(csv_filename, row, col):
with open(csv_filename, 'rb') as f:
return next(islice(csv.reader(f), row, row+1))[col]
答案 2 :(得分:0)
你可以保留一个计数器来计算行数:
counter = 1
for row in reader:
if counter == 3:
print('Interested in third row')
counter += 1
答案 3 :(得分:0)
这是一个非常基本的代码,可以完成这项任务,你可以很容易地用它来创建一个函数。
import csv
target_row = 3
target_col = 4
with open('yourfile.csv', 'rb') as csvfile:
reader = csv.reader(csvfile)
n = 0
for row in reader:
if row == target_row:
data = row.split()[target_col]
break
print data