Python将字典附加到列表中会导致keyError

问题描述 投票:0回答:1

我正在尝试列出要添加字典的列表。我已经做过很多次了,但是似乎找不到原因。它应该将字典添加到列表中并继续执行代码,但返回错误KeyError: '"id"'这是我的代码raid_damage.append("""{"id":{}, "damage":{}, "taken":{}, "streak":{}}""".format(str(user), str(damage_dealt), str(damage_taken), "1"))

我已经尝试使用'代替“(删除三重引号)并使用eval(),但仍然是完全相同的错误

任何想法?

python list dictionary append
1个回答
0
投票

由于字符串中有大括号,所以当您使用format()时会出现错误,因为{}是输入参数中给定值的特殊字符,解决方案是将它们加倍]]

raid_damage.append("""{{"id":{}, "damage":{}, "taken":{}, "streak":{}}}""".format(str(user), str(damage_dealt), str(damage_taken), "1"))
print(raid_damage[0]) # {"id":a, "damage":b, "taken":c, "streak":1}

[但是

小心,您没有添加dict,而只是添加了字典的string表示形式

0
投票

强制性的“抱歉,还不能评论”。

© www.soinside.com 2019 - 2024. All rights reserved.