【问题标题】:Cannot unpack tuple object in FOR loop Python [duplicate]无法在 FOR 循环 Python 中解压元组对象 [重复]
【发布时间】:2019-05-21 15:08:06
【问题描述】:

代码如下:

for m, n in ("example_string", True):
    print(m, n)

此代码不起作用。口译员说:

但是如何在 FOR 循环中解压这 2 项元组?

理想的输出是:

example_string 真

【问题讨论】:

  • m,n = ("example_string", True) ?或for m,n in (("example_string", True),)

标签: python python-3.x python-2.7 iterable-unpacking


【解决方案1】:

你需要先解压。

m, n = ("example_string", True)

如果元组本身包含可迭代对象,那么您可以在循环中解压它:

for m, n in (('x','y'), (x,y)):  # this works

【讨论】:

    【解决方案2】:

    您不能同时迭代一个 2 长度的元组并将其解压缩成一个元组。试试这个:

    m, n  = ("example_string", True)
    print(m, n)
    

    如果你想在 for 循环中解压你的元组,迭代中的每一项都必须是一个 2 元组。

    for m,n in [(1,2), (3,4)]:
        print(m,n)
    

    这将打印:

    1 2
    3 4
    

    【讨论】:

      猜你喜欢
      • 2019-03-30
      • 1970-01-01
      • 2021-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-15
      • 1970-01-01
      • 2020-10-18
      相关资源
      最近更新 更多