Python程序设计基础
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.1.1 基本语句

1.赋值语句

使用赋值号(=)将右边的值(表达式)赋给左边变量的语句称为赋值语句。例如:

上述4条赋值语句分别实现:为变量name赋值一个字符串、为变量age赋值一个整数、为变量score赋值一个浮点数、为变量value赋值一个复数。

2.复合赋值语句

复合赋值语句是用复合运算符(包括算术复合运算符和位复合运算符)的赋值语句,包括序列赋值、多目标赋值和复合赋值等。

(1)序列赋值

例如:

序列赋值可以为多个变量分别赋予不同的值,变量之间用英文逗号隔开。实际上是利用元组和序列解包(sequence unpacking)实现的。

例如:

上述语句的功能是分别将5个字符依次赋值给5个变量,first的值为"h",second的值为"e",其余类推。

又如:

上述语句的功能是分别将右侧的4个值赋值给左边的4个变量,name的值为"李四",age的值为20,其余类推。

Python可以通过序列赋值语句实现两个变量值的交换。例如:

执行以上两条语句之后,math与english的值发生了互换,math的值为75,english的值为80。

(2)多目标赋值

多目标赋值就是将同一个值赋值给多个变量。例如:

多目标赋值通常只用于赋予数值或字符串这种不可变类型,如果欲赋予可变类型(如列表类型,见第4章),则可能会出现问题。

(3)复合赋值

复合赋值是运算操作与赋值操作的组合。所有复合赋值运算符的优先级和赋值运算符的一样。其中,+=(加等于),-=(减等于),*=(乘等于),/=(除等于),%=(取余等于),**=(幂等于),//=(地板除等于)为算术复合运算符(见表3.1)。例如:

而<<=(左移等于),>>=(右移等于),&=(与等于),|=(或等于),^=(异或等于)等运算符为位复合运算符。例如:

表3-1 算术复合赋值运算符