Python变量定义和使用

任何编程语言都要处理数据, 比如数字, 字符串, 字符等, 我们可以直接使用数据, 也可以将数据保存到变量中, 方便以后使用.

变量(Variable)可以看成一个小箱子, 专门用来”盛装”程序中的数据. 每个变量都拥有独一无二的名字, 通过变量的名字就能找到变量中的数据.

从底层来看, 程序中的数据最终都要放到内存中, 变量其实就是这块内存的名字.

和变量相对应的是常量(Constant), 它们都是用来”盛装”数据的小箱子, 不同的是: 变量保存的数据可以被多次修改, 而常量一旦保存某个数据之后就不能修改了.

Python变量的赋值

在编程语言中, 将数据放入变量的过程叫做赋值(Assignment). Python使用=作为赋值运算符, 具体格式为:

name = value

name表示变量名; value表示值, 也就是要存储的数据.

注意, 变量是标识符的一种, 它的名字不能随便起, 要遵循Python表示标识符命名规范.

变量的值不是一成不变的, 它可以随时被修改, 只要重新赋值即可; 另外, 也不用关心数据的类型, 可以将不同类型的数据赋值给同一个变量.

Example:

n = 100             # 整型
n = 10.1            # 浮点型
n = 'hello, world'  # 字符串

注意, 变量的值一旦被修改, 之前的值就被覆盖了. 换句话说, 变量只能容纳一个值.

注解

在Python中, 赋值即变量定义.

如果是第一次对一个变量赋值, 表示定义该变量. 之后再对该变量赋值, 表示修改该变量的值.

Python变量的使用

使用Python变量时, 只需要知道变量的名字即可.

Python是弱类型的语言

在强类型的编程语言中, 定义变量时要指明变量的类型, 而赋值的数据也必须是相同类型的, C/C++/Java是强类型语言的代表.

以C++为例来演示强类型语言中变量的使用:

int n = 10;  // 整型数据
n = 100;     // 重新赋值
n = "hello, world";  // 错误, 不能将字符串赋值给整型变量

msg = "hello, world";  // 错误, 没有定义变量的类型

和强类型语言相对应的是弱类型语言, Python/JavaScript等脚本语言一般都是弱类型的.

弱类型语言有两个特点:

  • 变量无须声明就可以直接赋值, 对一个不存在的变量赋值就相当于定义了一个变量;
  • 变量的数据类型可以随时改变, 比如, 同一个变量可以一会被赋值为整数, 一会被赋值为字符串.

但是注意, 弱类型并不等于没有类型!弱类型是说在书写代码时不用刻意关注类型, 但是在编程语言的内部仍然是有类型的. 可以使用内置函数type()检测某个变量或者表达的类型.