[python基础] 同时赋值多个变量与变量值交换


python可以同时给多个变量进行赋值

 

给多个变量赋同样值:

>>> a = b = 2
>>> a
2
>>> b
2

 

不可以使用这种写法:

>>> a,b=2
Traceback (most recent call last):
  File "<pyshell#14>", line 1, in <module>
    a,b=2
TypeError: 'int' object is not iterable

 

给多个变量赋不同值:

>>> a,b = (1,2)
>>> a
1
>>> b
2
>>> a,b = [10,2]>>> a
10
>>> b
2

所以也支持类似range的函数

>>> a,b,c = range(3)
>>> a
0
>>> b
1
>>> c
2

 

交换变量的值:

交换变量的值在python中可以用这种便捷的写法,而无需另外设定一个变量存放临时数值

c=a
a=b
b=c

可以直接使用这种方法:

>>> a,b = [10,2]
>>> a,b = b,a
>>> a
2
>>> b
10
>>> a,b,c = [10,1,2]
>>> a,b,c = c,a,b
>>> a
2
>>> b
10
>>> c
1

且交换数值时,可以进行运算:

>>> a,b,c = [10,1,2]
>>> a
10
>>> b
1
>>> c
2
>>> a,b,c = c,a,a-c >>> a
2
>>> b
10
>>> c
8

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM