How to delete a dictionary list items
本问题已经有最佳答案,请猛点这里访问。
我有一本这样的字典:
1 2 3 | inventory = {'gold' : 500, 'pouch' : ['flint', 'twine', 'gemstone'], 'backpack' : ['xylophone','dagger', 'bedroll','bread loaf']} |
我怎样才能把匕首从上面取下来?
我试过这个:
1 | inventory["backpack"][1].remove() |
或
1 | del inventory["backpack"][1] |
但它犯了这个错误:
1 2 3 | Traceback (most recent call last): File"python", line 15, in <module> TypeError: 'NoneType' object has no attribute '__getitem__' |
inventory["backpack"[1].remove()-在inventory["backpack"[1]上应用了remove,它是一个字符串,没有remove属性。
也可以使用slice删除它-
1 | inventory["backpack"] = inventory["backpack"][:1] + inventory["backpack"][2:] |
或
1 | inventory["backpack"].remove(inventory["backpack"][1]) |
以下同样适用于-del inventory["backpack"][1]。您在列表对象上应用del,但它没有这样一个attribute。