2.2 标识符、变量与赋值语句

2.2.1 标识符

标识符是指用来标识某个实体的一个符号。在不同的应用环境下有不同的含义。在编程语言中,标识符是计算机语言中作为名字的有效字符串集合。标识符是用户编程时使用的名字,变量、常量、函数、语句块也有名字,它们的名字称为标识符。

1. 合法的标识符

在Python中,所有标识符可以包括英文、数字以及下画线,但要符合以下规则:

(1)标识符开头必须是字母或下画线。

(2)标识符不能以数字开头。

(3)标识符是区分大小写的。

(4)标识符中不能出现分隔符、标点符号或者运算符。

(5)标识符不能使用关键字。

(6)最好不要使用内置模块名、类型名、函数名、已经导入的模块名及其成员名作为标识符。

A、ABC、aBc、a1b2、ab_123、__(连续两个下画线)、_123等,都是合法的标识符。6a2b、abc-123、hello world(中间用了空格)、for(关键字)等则是非法的标识符。

以上代码显示由于使用了内置函数名pow作为变量名(标识符)导致pow()函数原有功能不能使用。

可以通过dir(__builtins__)查看所有内置函数和内置对象。

2. 关键字

在Python中,有一部分是关键字,构成语言的标识符,这样的标识符是保留字,不能用于其他用途,否则会引起语法错误。Python关键字如表2.1所示。

表2.1 Python关键字

我们也可以导入keyword模块后使用print(keyword.kwlist)查看所有Python关键字。

这里提一下关键字None。None是一个特殊的Python对象,和False不同,不是0,也不是空字符串、空列表等。None有自己的数据类型NoneType,None和任何其他数据类型进行是否相等比较永远返回False。可以将None赋值给任何变量,但是不能创建其他NoneType对象。

3. 下画线标识符

以下画线开头的标识符是有特殊意义的。

(1)以单下画线开头(_xxx)的标识符代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import∗”导入。

(2)以双下画线开头(__xxx)的标识符代表类的私有成员。

(3)以双下画线开头和结尾(__xxx__)的标识符代表Python中特殊方法专用的标识,如__init__代表类的构造函数。

这些内容将在类与对象中介绍。