序列解包

序列解包是一个概念,主要用在多个变量的赋值操作。在python、php、js中都有该操作。

python

参考https://zhuanlan.zhihu.com/p/78849545

变量参数一致

下面两种都行。

a,b,c=1,2,3
a,b,c=[1,2,3]

参数不一致时:

*表示剩余的那一部分,组成的数组。

a,*b=1,2,3    #a=1  b=[2,3]
a,*b=[1,2,3]   #a=1  b=[2,3]

函数调用

在函数调用过程中进行序列解包

def myfunc(a,b,c):
     print(a,b,c)
     
arr = [1,2,3]
myfunc(*arr)

obj ={"a":1,"b":2,"c":3}
myfunc(*arr)   # 输出 a b c 
myfunc(**arr)   # 输出 1 2 3

php

list($a,$b,$c)=[1,2,3]

js

a= [1,2]
b= [...a,3]