报错 发生异常: TypeError list indices must be integers or slices, not dict
其中name['cost_performance']=int(input("性价比"))为正确使用方法,goods[name]['usability']=int(input("实用性"))报错。
goods = [ {'name': '狐狸小王子周边卡通吊坠', 'price': 8.9, 'count': 100},
{'name': '《银河系搭车指南五部曲》', 'price': 87.5, 'count': 100},
]
def mark_point():
for name in goods:
name['cost_performance']=int(input("性价比"))
goods[name]['usability']=int(input("实用性"))
goods[name]['likeness']=int(input("喜欢程度"))
列表goods中存放着每一个商品信息组成的字典类型。在该循环中,外面的取出的name就是一个字典,通过键值对来取内容即可。
def mark_point():
for name in goods:
print(goods[0])
print(name)
name['cost_performance']=int(input("性价比"))
mark_point()
- 输出:
{‘name’: ‘狐狸小王子周边卡通吊坠’, ‘price’: 8.9, ‘count’: 100}
{‘name’: ‘狐狸小王子周边卡通吊坠’, ‘price’: 8.9, ‘count’: 100}
性价比



