Python教程004 变量
文章目录
什么是变量
用标识符命名的存储单元的地址称为变量,变量是用来存储数据的,通过标识符可以获取变量的值,也可以对变量进行赋值。对变量赋值的意思是将值保存到变量里面,保存完成后,变量所指向的存储单元存储了被赋的值,在Pyhton语言中赋值操作符为=、+=、-=、*=、/=、%=、**=、//=。
关于标识符,请参照“python教程003-编码-缩进-标识符-保留字-注释-表达式-语句”的内容-标识符。
定义变量
在Python中,使用变量的时候,不需要提前声明,只需要给这个变量赋值即可定义一个变量。如果只写一个变量,而没有赋值,那么Python认为这个变量没有定义。
变量的赋值语法如下:
identifier = value
其中identifier是标识符,也就是变量的名称。value为变量的值。
例如:
|
|
执行以上程序会输出如下结果:
|
|
变量类型
变量的类型是由变量的值决定的。变量的值是什么类型变量就是什么类型。
例如,将整数1赋值给变量a,那么变量a的类型就是整数。内置的type()函数可以用来查询变量的类型。
|
|
执行以上程序会输出如下结果:
|
|
改变变量类型
变量的类型是由其值决定的。变量的值是可以改变为其他类型的值,因此,变量的类型也是可以改变的。
像这种定义后的变量,可以随意改变类型的也被称之为动态语言。声明之后不可以改变类型的语言为静态语法,例如java,c#等。
例如:
|
|
执行以上程序会输出如下结果:
|
|
多个变量赋值
Python允许你同时为多个变量赋值(同一个值)。
例如:
a = b = c = 10
创建一个三个整数变量a,b,c,值为10,从后向前赋值,三个变量被赋予相同的数值10。
也可以为多个变量指定不同的值。
例如:
a, b, c = 10, 20, "test"
创建两个整数变量a和b,一个字符串变量c。10和20的分配给变量a和b,字符串”test”分配给变量c。
还有另外一种写法,就是加上括号和逗号,使其构成元组,通过元组解包来给变量赋值。关于元组及解包的相关知识以后讲解。
(a, b, c) = (10, 20, "test")
a, b, c = (10, 20, "test")
(a, b, c) = 10, 20, "test"
以上三种方式和a, b, c = 10, 20, "test"
是同样的效果。
由于这个特性,交换两个变量的话比较容易实现。
例如:
|
|
执行以上程序会输出如下结果:
|
|
global全局变量
由global关键字声明的变量是全局变量,适用于整个当前代码块。
例如:
|
|
如果没有global语句呢?
|
|
为啥结果是2呢?
因为add函数内的result变量是局部变量,同函数外的result没有任何关系。所以print(result),输出的是函数外部变量result的值2。
注意: 在实际的编程时,你应该试着避开global关键字,因为它引入了多余的变量到全局作用域了,容易导致不易察觉的错误。例如下面的例子,将函数内的局部变量addresult升级为全局变量。
|
|
可以使用global语句指定多个全局变量。
例如:global x, y, z
|
|
转载请注明本网址。