【发布时间】:2015-02-26 21:29:30
【问题描述】:
我正在尝试创建一段代码,它会询问您的姓名和分数,然后将您最近的分数保存到 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={},因为在导入字典时需要添加它。
【问题讨论】:
-
严肃的问题:为什么
nam而不是name,为什么sco而不是score?此外,如果您尝试序列化(“保存”)dict对象,为什么要使用csv?这是互操作性的问题吗?如果不是,为什么不腌制呢? -
以
append模式而不是write模式打开文件?
标签: python csv python-3.x dictionary