任何编程语言都需要处理数据,比如数字、字符串、字符等,我们可以直接使用数据,也可以将数据保存到变量中,方便以后使用。
变量(Variable)可以看成一个小箱子,专门用来“盛装”程序中的数据。每个变量都拥有独一无二的名字,通过变量的名字就能找到变量中的数据。
从底层看,程序中的数据最终都要放到内存(内存条)中,变量其实就是这块内存的名字。
和变量相对应的是常量(Constant),它们都是用来“盛装”数据的小箱子,不同的是:变量保存的数据可以被多次修改,而常量一旦保存某个数据之后就不能修改了。
[Python]变量的赋值
在编程语言中,将数据放入变量的过程叫做赋值(Assignment)。Python 使用等号=
作为赋值运算符,具体格式为:
name = value
name 表示变量名;value 表示值,也就是要存储的数据。
注意,变量是标识符的一种,它的名字不能随便起,要遵守 [Python 标识符命名规范],还要避免和 [Python 内置函数]以及 [Python 保留字]重名。
例如,下面的语句将整数 10 赋值给变量 n:
n = 10
从此以后,n 就代表整数 10,使用 n 也就是使用 10。
更多赋值的例子:
1. pi = 3.1415926 #将圆周率赋值给变量 pi
2. url = "https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI/" #将 Python 教程的地址赋值给变量 str
3. real = True #将布尔值赋值给变量 real
变量的值不是一成不变的,它可以随时被修改,只要重新赋值即可;另外你也不用关心数据的类型,可以将不同类型的数据赋值给同一个变量。请看下面的演示:
1. n = 10 #将10赋值给变量n
2. n = 95 #将95赋值给变量n
3. n = 200 #将200赋值给变量n
5. abc = 12.5 #将小数赋值给变量abc
6. abc = 85 #将整数赋值给变量abc
7. abc = "https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI" #将字符串赋值给变量abc
注意,变量的值一旦被修改,之前的值就被覆盖了,不复存在了,再也找不回了。换句话说,变量只能容纳一个值。
除了赋值单个数据,你也可以将表达式的运行结果赋值给变量,例如:
1. sum = 100 + 20 #将加法的结果赋值给变量
2. rem = 25 * 30 % 7 #将余数赋值给变量
3. str = "python教程入门学习" + "https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI/" #将字符串拼接的结果赋值给变量
Python 变量的使用
使用 Python 变量时,只要知道变量的名字即可。
几乎在 Python 代码的任何地方都能使用变量,请看下面的演示:
>>> n = 10 >>> print(n) #将变量传递给函数 10 >>> m = n * 10 + 5 #将变量作为四则运算的一部分 >>> print(m) 105 >>> print(m-30) #将由变量构成的表达式作为参数传递给函数 75 >>> m = m * 2 #将变量本身的值翻倍 >>> print(m) 210 >>> url = "https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI/" >>> str = "[python教程入门学习](https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI/)教程:" + url #字符串拼接 >>> print(str) python教程入门学习:https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI/
Python 是弱类型的语言
在强类型的编程语言中,定义变量时要指明变量的类型,而且赋值的数据也必须是相同类型的,C语言、C++、[Java]是强类型语言的代表。
下面我们以 C++ 为例来演示强类型语言中变量的使用:
1. int n = 10; //int表示整数类型
2. n = 100;
3. n = "https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI/[socket]"; //错误:不能将字符串赋值给整数类型
5. url = "https://docs.qq.com/doc/DV3FqZ1JDd0FScmtI/"; //错误:没有指明类型的变量是没有定义的,不能使用。
和强类型语言相对应的是弱类型语言,Python、[JavaScript]、[PHP]等脚本语言一般都是弱类型的。
弱类型语言有两个特点:
- 变量无须声明就可以直接赋值,对一个不存在的变量赋值就相当于定义了一个新变量。
- 变量的数据类型可以随时改变,比如,同一个变量可以一会儿被赋值为整数,一会儿被赋值为字符串。
注意,弱类型并不等于没有类型!弱类型是说在书写代码时不用刻意关注类型,但是在编程语言的内部仍然是有类型的。我们可以使用 type() 内置函数类检测某个变量或者表达式的类型,例如:
>>> num = 10 >>> type(num)
Python学习路线:(源码)