计算机程序处理的数据必须放入内存,机器语言和汇编语句直接通过内存地址访问这些数据,而高级语言则通过内存单元命名(即变量)来访问这些数据。在Python 3中一切皆为对象,对象是某个类的实例,对象可以通过标识符引用,对象引用即指向具体对象实例的标识符,它也称为变量。
一、变量
1、变量赋值
变量名=字面量或表达式
Python中的变量不需要声明,可以随时赋不同类型的值,也可以使用一个等号为多个变量赋值。
例如:
>>> x=0;y=0;z=0 #xyz变量均指向int对象0
>>> a,b,c=10,30,50
>>> a
10
>>> b
30
>>> c
50
>>> str1="abc" #变量str1指向值为“abc”的str型实例对象
>>> str1
'abc'
>>> aFloat
Traceback (most recent call last):
File "", line 1, in
aFloat
NameError: name 'aFloat' is not defined
>>>
NameError: name 'aFloat' is not defined这句话提示说变量 aFloat没有定义,也就是说 Python变量在被访问之前必须被初始化,即赋值,绑定到某个对象,否则会报错。
变量拥有自己的空间,变量连接到对象只是存储了对象的单元的存储地址,并没有存储对象的值。一个变量可以引用不同的对象,一个对象可以被多个变量引用,引用不同的对象,id也就不同了。
2、删除变量
使用 del语句删除不使用的变量。例如:
>>> m=3
>>> m
3
>>> del m
>>> m
Traceback (most recent call last):
File "", line 1, in
m
NameError: name 'm' is not defined
>>>
3、变量交换
Python中可以使用“a,b=b,a”实现两个变量的值的交换。例如:
>>> i,j=10,20
>>> i
10
>>> j
20
>>> i,j=j,i
>>> i
20
>>> j
10
4、常量
Python不支持常量,Python语言声明在程序运行过程中不会改变的变量为常量,通常使用全大写字母表示常量名。例如:
>>> PI=3.14#浮点类型常量PI
>>> STR_NAME='张三'#字符串类型常量STR_NAME
二、赋值语句
1、链式赋值语句
= 成为赋值运算符,var=8可以理解为把8赋值给变量var。
变量1=变量2=表达式
等价于:
变量2=表达式
变量1=变量2
链式赋值用于给多个变量赋同一个值。例如:
>>> a=b=3+2
>>> b
5
>>> a
5
2、复合赋值语句
使用复合赋值运算符可以简化程序代码,提高程序运行效率。
运算符
含义
举例
等价于
+=
加法赋值、字符串拼接
sum+=item 、Str1+=“Foo”
sum=sum+item 、Str1=Str1+“Foo”
-=
减法赋值
i-=1
i=i-1
*=
乘法赋值
x*=y+3
x=x*(y+3)
/=
除法赋值
x/=y
x=x/y
//=
整除赋值
x//=y-1
x=x//(y-1)
%=
取模赋值
x%=2
x=x%2
**=
幂运算赋值
x**=2
x=x**2
<<=
左移赋值
x<<=y
x=x<
>>=
右移赋值
x>>=y
x=x>>y
&=
按位与赋值
x&=y
x=x&y
|=
按位或赋值
x|=y
x=x|y
^=
按位异或赋值
x^=y
x=x^y
例如:
>>> i=3 #变量i指向int对象3
>>> i+=1 #先计算i+1的值,在创建一个值为4的int对象,并绑定到变量i
>>> i #输出i
4
>>> i*=5
>>> i
20
>>> i/=2
>>> i
10.0