【问题标题】:Is there a way to remove an element in a nested list?有没有办法删除嵌套列表中的元素?
【发布时间】:2021-06-23 05:38:17
【问题描述】:

我有以下清单:

a = ['hi', ['item1', 'item2']]

我正在尝试使用a.remove() 从列表中删除第一个元素“hi”并遍历内部列表,我必须对其进行概括,因为我将使用更多这些元素。但是,我无法得到它。

a = a.remove(a[0])
for each_item in a:
    for item in each_item:
        print(item)

我以为会回来

item1
item2

但它反而返回

'NoneType' 对象不可迭代

我需要能够概括它。也就是说,我需要能够删除该列表的第一个元素,并能够打印列表中的其他元素

有没有办法做到这一点?

【问题讨论】:

  • 因为remove 方法返回None 并且您已将None 分配给a。您应该删除该作业。
  • 我是新手,能不能详细解释一下?
  • 不确定你是用例,但更常见的是不理会a,只迭代你需要的部分:for each_item in a[1:]:这将从第二个元素开始迭代,但是不会改变原始列表。

标签: python-3.x list nested-lists


【解决方案1】:

a.remove 不返回没有删除值的数组。它返回 None 作为删除项目。

不正确:a = a.remove('hi)

正确:a.remove('hi')

【讨论】:

  • 工作,谢谢。但我不明白a = a.remove 有什么问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-25
  • 2020-02-05
  • 2019-10-07
  • 2021-07-17
  • 2019-07-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多