我有一个创建函数loadResults的赋值,其中存储了runner的数量,时间,名称和姓氏,并返回包含此信息的字典列表。字典的键是:“数字”,“名字”,“姓”,“时间”。到目前为止,我有:
def loadResults():
myFile = open("marathon.csv", "r")
number = []
for line in myFile:
info = line.split(',')
s = {}
s['number'] = info[0]
s['time'] = info[1]
s['firstname'] = info[2]
s['surname'] = info[3:]
number.append(s)
myFile.close
return number
然而,我还必须编写一个函数displayTime,它接收跑步者列表和跑步者的号码,并显示名称和时间。我有:
def displayTime(time,number,firstname):
for s in number:
if s['number'] == time:
print(s['name'])
runners = loadResults()
displayTime(number,'3070')
不幸的是,我没有得到任何帮助,我们将不胜感激。
答案 0 :(得分:1)
您可以使用csv.DictReader
:
import csv
with open('your_file') as csvfile:
reader = csv.DictReader(csvfile)
然后reader
是字典。
如果csv文件没有第一行的密钥,您可以使用fieldnames
:
import csv
with open('your_file') as csvfile:
reader = csv.DictReader(csvfile, fieldnames=['number', 'name', 'surname', 'time'])