变量
变量的定义
一段内存要被使用,就要被声明,于是用标识符指向地址,根据数据类型来分配空间大小。
变量就是一个指定数据类型的标识符,它指向一个地址,按照要求的数据类型分配空间大小。 在没有改变地址的情况下,对变量的操作就是对该空间的操作。
- 如果是
C/C++
等编译型语言或其他一些特别的,变量的定义就是声明数据类型和标识符。int a; // 给一个地址 ADDR ,再给整型的 4字节空间,即定义了一个变量 a int b = 1; // 编译顺序 int b; b = 1; int c = b; // int c; c = b;
- 然而
Python
没有声明数据类型的语法,只有一个标识符不足以定义变量。于是必须先将已知数据类型的字面值或变量给到它,以确定变量类型,同时给到地址空间。a = 1 # 反推到 a 的数据类型是整数(Int),再分配地址空间 b = a # a: Int -> b: Int
所以要深入熟悉一个 Python 变量的定义,就必需要了解标识符和字面值(字面量)。
python 是一门面向对象的编程语言,在这个基础上,定义一个变量既是定义一个对象的实例。
标识符与字面值
-
标识符:按照一定的词法规则,允许被声明为(变量名、函数名、类名、方法名等)。
-
关键字:标识符中的保留字,不可用于普通标识符。关键字的拼写必须与这里列出的完全一致:
False await else import pass None break except in raise True class finally is return and continue for lambda try as def from nonlocal while assert del global not with async elif if or yield
-
字面值:是内置类型常量值的表示法,允许被声明为变量值、临时变量值。
变量名的命名规则
基于标识符词法规则,变量名命名满足:
- 变量名只能包含字母、数字和下划线。
- 变量名必须以字母或下划线开头。
- 变量名不能是 Python 关键字,如 if、while、for 等。
变量名的命名习惯
- 见名知义,例如:
name
、age
。 - 大驼峰,即每个单词首字母都大写,例如:
MyName
。 - 小驼峰,第二个(含)以后的单词首字母大写,例如:
myName
。 - 下划线,例如:
my_name
。