【问题标题】:How to remove one specific element from a list [duplicate]如何从列表中删除一个特定元素[重复]
【发布时间】:2019-08-02 20:52:37
【问题描述】:

我的变量 L1 看起来像这样:

[{'distance': 1.9999,
  'breakEvenDistance': 1.9329,
  'max': 0.0010342833053929787},
 {'distance': 1.9251,
  'breakEvenDistance': 2.0669999999999997,
  'max': 0.0011183923895419084,
  'min': 0.0010342833053929787},
 {'distance': 1.8802,
  'breakEvenDistance': 1.6758,
  'max': 0.0011927892918825562,
  'min': 0.0011183923895419084},
 {'distance': 1.8802,
  'breakEvenDistance': 1.5956,
  'max': 0.0012522046577102665,
  'min': 0.0011927892918825562}]

我需要删除列表中的最后一个'max'!我试图检查文档,在L1[-1]['max'] 上使用了函数del,但没有用.. 有什么想法或线索吗?谢谢!

【问题讨论】:

  • 无法复制,工作正常。
  • 工作得很好 del L1[-1]['max'] 完成这项工作
  • 您想从每个元素中删除max 键吗?使用del L1[-1]['max'] 删除最后一个 dict max 就可以了
  • @viktor.w 不清楚您是要从最后一个字典中删除 max 键,还是从最后一个字典中删除,或者其他什么。如果是第一个,你已经得到了答案。如果是第二个,您可以使用lst.pop()del lst[-1] 删除最后一个元素。否则,您需要澄清。

标签: python


【解决方案1】:

-1 获取dict的最后一个元素:

del dict_[-1]['max']
print(dict_)

输出:

[
 {'distance': 1.9999, 'breakEvenDistance': 1.9329, 'max': 0.0010342833053929787},
 {'distance': 1.9251, 'breakEvenDistance': 2.0669999999999997, 'max': 0.0011183923895419084, 
  'min': 0.0010342833053929787}, 
 {'distance': 1.8802, 'breakEvenDistance': 1.6758, 'max': 0.0011927892918825562, 
  'min': 0.0011183923895419084}, 
 {'distance': 1.8802, 'breakEvenDistance': 1.5956, 
  'min': 0.0011927892918825562}
]

【讨论】:

  • 这已经被 OP 尝试过并且已经被@rachidelkedmiri 评论了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-14
  • 2020-07-23
  • 2021-04-20
  • 1970-01-01
  • 2015-01-05
相关资源
最近更新 更多