首页 > 解决方案 > 从列表中删除一个元素并返回截断的列表

问题描述

我有:

inventory1=['AA','EA','RW','Others']

我需要一个包含除“其他”之外的所有元素的列表。在不同的列表中,“Others”的位置是不固定的。有时它是最后一个,而在其他时候,它在其他地方。上面的列表可以包含大量的字符串。

我试过了,

inventory2=inventory1
inventory2.remove('Others')

不工作。

inventory2=inventory1.remove('Others')

甚至不返回列表。

这应该很容易做到。然而,这是行不通的。

标签: pythonlist

解决方案


刚刚在 Python3.5 中尝试了以下操作(在终端中运行):

inventory1=['AA','EA','RW','Others']
inventory1.remove('Others')
inventory1

输出是:

['AA', 'EA', 'RW']

所以,我看不出问题出在哪里,因为它似乎按预期工作。“其他”被删除。更麻烦的方法是:

  inventory1=['AA','EA','RW','Others']
  del inventory1[inventory1.index('Others')]
  inventory1

输出是一样的。有关更多信息,请参阅这篇文章


推荐阅读