序列解包

Posted 行走的cd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了序列解包相关的知识,希望对你有一定的参考价值。

先看示例:

x,y,z=1,2,3
x,y=y,x
print(x,y,z)
#输出为2,1,3

由输出结果看到,x和y的值交换了,在Python中,交换所做的事情叫序列解包可选迭代解包,即将多个值得序列解开,然后放到变量序列中,例如:

 

nums=(1,2,3)
x,y,z=nums
print(x,y,z)

 

可以看到,序列解包后,变量获得了对应得值

再看一个例子:

student={name:xiaoming,number:110}
t=student.popitem()
print(t)
x,y=student.popitem()
print(x,y)

#输出
(‘number‘, 110)
name xiaoming

可见,此处作用于元组,使用popitem()方法将键-值作为元组返回,返回得元组可以直接赋值到两个变量中

序列解包允许函数返回一个以上得值并打包成元组,然后通过一个赋值语句进行访问

但是,序列解包中得元素数量必须和放置在赋值符号‘=’左边的数量完全一致,否则会报错

 

以上是关于序列解包的主要内容,如果未能解决你的问题,请参考以下文章

Pylint 警告:可能不平衡的元组与序列解包

序列解包

序列封包和序列解包

从 appdomain 中解包不可序列化的类

Python序列封包与解包

Python序列封包与解包