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

(十)变量的解压

时间:2018-04-19 21:53:39      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:怎么办   pyhon   unp   数据   exp   pac   expec   怎么   下划线   

变量的解压

列表L=[1,2,3,4,5,6],要求将里列表L中每一个值取出,并单独赋给a,b,c,d,e,f。
可以按照传统办法

a=L[0]
b=L[1]
...

可以取,但是如果列表过长,一个一个取值不现实。

pyhon中可以这么取

a,b,c,d,e,f=L
print(a,b,c,d,e,f)

>>>1 2 3 4 5 6

如果赋的值没有和列表一一对应,则会报错‘太多的值没有被解压’

a,b,c=L 
print(a,b,c)

>>>ValueError: too many values to unpack (expected 3)

如果只要前三个数据赋给a,b,c 怎么办?可以用下划线代替不要的值,比如:

a,b,c,_,_,_=L
print(a,b,c)

>>>1 2 3

可以取出前三个值,但是后面的下划线还是太麻烦,怎么办? 可以用星号* 代替,比如

a,b,c,*_=L
print(a,b,c)

>>>1 2 3

取出后三个呢?

*_,a,b,c=L
print(a,b,c)

>>>4 5 6

如下需求
m=10
n=20
让m 和n的值对调,m=20,n=10 如何操作?

m=10
n=20
m,n=n,m
print(m,n)

>>>20 10

(十)变量的解压

标签:怎么办   pyhon   unp   数据   exp   pac   expec   怎么   下划线   

原文地址:https://www.cnblogs.com/morron/p/8886200.html

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