【问题标题】:How to delete a dictionary list items [duplicate]如何删除字典列表项[重复]
【发布时间】:2013-10-29 23:36:40
【问题描述】:

我有一本这样的字典:

inventory = {'gold' : 500, 
        'pouch' : ['flint', 'twine', 'gemstone'], 
        'backpack' : ['xylophone','dagger', 'bedroll','bread loaf']}

我怎样才能从中取出匕首?

我试过了:

inventory["backpack"][1].remove()

del inventory["backpack"][1]

但它犯了这个错误:

Traceback (most recent call last):
File "python", line 15, in <module>
TypeError: 'NoneType' object has no attribute '__getitem__'

【问题讨论】:

  • del inventory["backpack"][1] 适合我。
  • 这让我出现了这个错误:Traceback(最近一次调用最后一次):文件“python”,第 15 行,在 类型错误:'NoneType' 对象不支持删除项目

标签: list python-2.7 dictionary


【解决方案1】:

inventory["backpack"][1].remove() - 在 inventory["backpack"][1] 上应用 remove,它是一个字符串,没有 remove 属性。

你也可以使用 slice 来删除它-

inventory["backpack"] = inventory["backpack"][:1] + inventory["backpack"][2:]

或 -

inventory["backpack"].remove(inventory["backpack"][1])

同样适用于 - del inventory["backpack"][1]。您在列表对象上应用 del 但它没有这样的属性。

【讨论】:

  • 对我来说很明显是inventory['backpack'].remove('dagger')
猜你喜欢
  • 2012-02-16
  • 2017-08-13
  • 2019-09-18
  • 1970-01-01
  • 1970-01-01
  • 2016-03-14
  • 1970-01-01
  • 2022-11-27
相关资源
最近更新 更多