开发者社区 问答 正文

解压序列赋值给多个变量

现在有一个包含 N 个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给 N 个变量?

展开
收起
哦哦喔 2020-04-16 14:08:52 929 分享 版权
1 条回答
写回答
取消 提交回答
  • 任何的序列(或者是可迭代对象)可以通过一个简单的赋值语句解压并赋值给多个变量。 唯一的前提就是变量的数量必须跟序列元素的数量是一样的。

    代码示例:

    >>> p = (4, 5)
    >>> x, y = p
    >>> x
    4
    >>> y
    5
    >>>
    
    

    如果变量个数和序列元素的个数不匹配,会产生一个异常。

    代码示例:

    >>> p = (4, 5)
    >>> x, y, z = p
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    ValueError: need more than 2 values to unpack
    >>>
    
    2020-04-16 14:24:40
    赞同 展开评论
问答地址: