我试图创建一段代码,如果它要求你的名字和分数,然后保存你最近的分数到一个csv文件。我已经设法让它检查你是否在字典中,并将你的3个最新分数存储在csv文件中。但是,我不知道如何获取代码来打开保存它的文件,这意味着每次保存字典后,它都会有您的最新存储并删除其他所有内容。你知道吗
这就是我得到的:
import csv
nam=input("Name")
sco=int(input("Score"))
if nam in class1:
namsco=class1[nam]
del class1[nam]
del namsco[0]
namsco.append(sco)
class1[nam]=namsco
print("Score added")
else:
print ("Creating profile")
class1[nam]=[0,0,sco]
print("Score added")
with open('temp.csv', 'w') as f:
w = csv.DictWriter(f, class1.keys())
w.writeheader()
w.writerow(class1)
我省略了class1={}
,因为在导入字典时需要添加它。你知道吗
您正在查找“a”参数(附加到文件),而不是“w”。你知道吗
如果这不能回答问题,我就把它去掉。我不明白反对票。你知道吗
下面尝试用csv文件中的数据初始化
class1
字典。如果此操作失败是因为它是第一次并且文件不存在,则会将其设置为空字典。你知道吗接下来,它通过添加一个新条目或更新一个现有条目来更新这个字典,然后在最后用更新的字典中的值重写整个文件。你知道吗
注意,当使用
csv.DictReader
和csv.DictWriter
时,每一行也是一个字典。在这种情况下,使用csv.reader
和csv.writer
可能更容易,其中每一行只是一个值序列。你知道吗相关问题 更多 >
编程相关推荐