Python多次写入字典的问题
https://img.hecady.com/images/2022/03/20220030110Y90d1e40ae9891.png具体实现,就是这样写只能写入一次数据,我想的就是怎么样去实现去持续写入数据?
我试过多次写入但是会覆盖原有字典的数据 def addInfo():
num = input('请输入要录入的人数:')
if num.isdigit():
for i in range(int(num)):
data = {}
data['姓名'] = input('学生姓名\n')
data['性别'] = input('性别\n')
# ...
with open('StudentInfo.json','a+') as f:
f.write(json.dumps(data, ensure_ascii=False, indent=2) + '\n')
print('录入完毕!')
else:
addInfo() 对open函数的理解有误。第二行没必要也用得不对。open的w模式从头开始写文件,有内容则覆盖。这就是只有一次的原因,因为再写的都覆盖了。open要搭配F.close()使用。而使用with open则不需要。3楼的代码值得你学习 xian54966 发表于 2022-3-11 21:50
对open函数的理解有误。第二行没必要也用得不对。open的w模式从头开始写文件,有内容则覆盖。这就是只有一 ...
其实我是想使用2行的代码来创建一个文件,但是后来看了一下好像 a+ 也可以直接创建。谢谢提醒. 支持 ,学习学习。 学习来了,学编程还得看吾爱破解,哈哈哈 with open会自动关闭文件流,利用了上下文管理器 学习了。参数的理解
页:
[1]