我有一個CSV文件,並想獲得,比如說一個特定的值,第20行,第3列獲取特定的行和值與Python DictReader
但到目前爲止,我所管理的是顯示所有列3(這裏稱爲「名稱」)上的值爲。
這裏是我的Python代碼
d = DictReader(r.csv().split('\n'))
for line in d:
score = line["name"]
print score
如何顯示,並獲得價值只有特定行?
我有一個CSV文件,並想獲得,比如說一個特定的值,第20行,第3列獲取特定的行和值與Python DictReader
但到目前爲止,我所管理的是顯示所有列3(這裏稱爲「名稱」)上的值爲。
這裏是我的Python代碼
d = DictReader(r.csv().split('\n'))
for line in d:
score = line["name"]
print score
如何顯示,並獲得價值只有特定行?
樸素溶液:
target_row = 5
for num, line in enumerate(d):
if num == target_row:
print line["name"]
break
我除去中間變量score
。
請注意,這是非最佳的,因爲您迭代,直到您到達所需的行,但我不知道是否有隨機訪問DictReader中的行。
直接跳到所需的線路,正如在其他的答案,但切片的CSV閱讀迭代器代替人工循環:
import csv, itertools
rownum = 20
colname = "name"
line = itertools.islice(d, rownum - 1, rownum).next()
score = line[colname]
(不是最漂亮的代碼,我知道,但這只是爲了說明這一點)。
它的工作原理。謝謝! – tucson 2011-02-02 16:10:02