码迷,mamicode.com
首页 > 其他好文 > 详细

解压序列赋值给多个变量

时间:2018-07-10 16:01:28      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:print   unp   div   values   使用   序列   赋值   必须   hello   

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

结果:
4 5
data = [ACME,50,91.1,(2018,7,10)]
name,shares,price,date = data
print(name)
print(shares)
print(price)
print(date)

结果:
ACME
50
91.1
(2018, 7, 10)


name,shares,price,(year,mon,day) = data
print(name)
print(shares)
print(price)
print(year)
print(mon)
print(day)

结果:
ACME
50
91.1
2018
7
10

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

p = (4,5)
w,x,y = p
print(p)

结果:
   w,x,y = p
ValueError: not enough values to unpack (expected 3, got 2)

解压赋值可以用在任何可迭代对象上面

s = Hello
a,s,d,f,g = s
print(a)
print(s)
print(d)
print(f)
print(g)

结果:
H
e
l
l
o

如果只想解压一部分,丢弃其他的值,可以使用任意变量名去占位,到时候丢掉这些变量就行了,但必须保证你选用的占位变量在其他地方没有被使用

data = [ACME,50,91.1,(2018,7,10)]
_,shares,price,_ = data
print(shares)
print(price)

结果:
50
91.1

 

解压序列赋值给多个变量

标签:print   unp   div   values   使用   序列   赋值   必须   hello   

原文地址:https://www.cnblogs.com/wanglan/p/9289201.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!