编程语言
首页 > 编程语言> > Python基础教程:赋值的多个方式

Python基础教程:赋值的多个方式

作者:互联网

一、序列解包/可迭代对象解包

释义:将一个序列(或任何可迭代的对象)解包,并将得到的值存储到一系列变量中。

1、并行赋值

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

可用于交换变量值

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

可用于返回元组(或其他序列或可迭代对象)的函数或方法

>>> d = {"A":"a","B":"b","C":"c","D":"d"}
>>> key1,value1 = d.popitem()
>>> key1
'D'
>>> value1
'd'
>>> key2,value2 = d.popitem()
>>> key2
'C'
>>> value2
'c'

 

2、可用星号运算符(*)收集多余值

>>> a,b,*rest = [1,2,3,4,5]
>>> rest
[3, 4, 5]
>>> c,d,*e = (1,2,3,4,5,6)
>>> e
[3, 4, 5, 6]       #赋值语句的右边可以是任何类型的序列,但带*的变量最终包含的都是一个列表

 

 

二、链式赋值

释义:用于将多个变量关联到同一个值

>>> z = [1,2,3]
>>> x = y = [1,2,3]
>>> x == y
True
>>> x == z
True
>>> x is y  #通过链式赋值的变量指向同一个对象
True
>>> x is z  #分开赋值的变量即使对应的值相同,但指向的是不同对象
False

 

 

三、增强赋值

释义:v1 = v1 + v2  →  v1 += v2

>>> x = 100
>>> x *= 2
>>> x
200
>>> x /= 4
>>> x
50.0
>>> x += 6
>>> x
56.0
>>> x -= 17
>>> x
39.0
>>> y = 'a'
>>> y += 'A'
>>> y
'aA'

 

标签:变量,迭代,Python,解包,v1,基础教程,True,赋值
来源: https://www.cnblogs.com/12345zjl/p/16281694.html