【问题标题】:SyntaxError: iterable unpacking cannot be used in comprehension. What is the issue?SyntaxError:可迭代解包不能用于理解。问题是什么?
【发布时间】:2020-01-26 15:04:28
【问题描述】:

我有以下代码

li = [[[1,2],[3,4]]]
min([*x[0] for x in li])

我希望看到

Output: 1

但是发生了什么

SyntaxError: iterable unpacking cannot be used in comprehension

有什么问题?

【问题讨论】:

标签: python


【解决方案1】:

或者直接指向第一个元素:

li = [[[1,2],[3,4]]]
min([x[0] for x in li[0]])

或者迭代所有的规范化列表:

min([x[0] for xs in li for x in xs])

【讨论】:

    【解决方案2】:

    您可能正在寻找这样的东西:

    li = [[[1,2],[3,4]]]
    min(li[0], key=lambda x: x[0])
    

    如果您想接收具有最小第一个参数的一对,只需将您自己的比较函数提供给min 作为key

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-27
      • 2019-11-03
      • 1970-01-01
      • 2011-04-02
      • 2021-11-12
      • 2017-02-09
      • 1970-01-01
      相关资源
      最近更新 更多