当前位置:首页>python>Python变量及命名

Python变量及命名

  • 2026-10-21 13:29:32
Python变量及命名

Python

变量及命名

1

Python变量及命名

1.关于变量

Python中的变量并不直接存储值,而是对存储了值的内存地址的引用。这是因为Python采用基于值的内存管理模式。

我们可以这样理解:内存就像是一个个的盒子;值就像是盒子里的物品;而变量则是贴在盒子上的一个个标签。正因为如此,Python中,变量不需要提前声明,但是一定要指向(或者关联)某

一个对象(在这里我们可以把对象理解为放到盒子里的值),变量在指向对象的时候就自动创建了。

2.变量的命名规则

(1)变量名由大小写字母、数字、下画线,以及汉字等字符串组合,但是,

一般情况下,我们并不鼓励使用汉字作为变量名。

(2)变量名必须以字母或下画线开头(不能以数字开头),但以下画线开

头有特殊的含义,我们也不鼓励开头使用下划线。

(3)变量名中不能有空格或者标点符号(如逗号、顿号、分号、冒号等)。

(4)不能将保留字作为变量名使用。

(5)Python变量名是大小写敏感的,也就是说,同样的字母,大写和小写代表不同的变量。

3.保留字

保留字也称关键字,是指在语言本身的编译器中已经定义过的单词,具有特定含义和用途,用户不能再将这些单词作为变量名或函数名、类名使用。

Python 的保留字可以通过下面的命令查看。

>>> import keyword

>>> keyword.kwlist

Python语言的35个保留字如下(一级要求记住标*的18个,但考试时也可能出现其余的17个):False*、 None*、 True*、and*、as*、assert、async、 await、 break、 class、 continue、 def* 、del*、 elif*、 else*、 except、finally、 for*、 from*、 global、if*、 import*、in*、 is*、lambda、nonlocal、not*、or*、 pass、raise、return、 try、while*、with、 yield。

若将保留字作为变量名并赋值,将会得到语法错误提示,如下所示。

>>>if ="Python"

SyntaxError: invalid syntax

易错点

(1)虽然不鼓励用汉字作为变量名,但是不能说变量名用汉字就是错误的。

(2)Python允许同时为多个变量赋值,该种赋值有两种情况:

第一种,多个变量指向同一个对象;

第二种,多个变量指向不同对象,在该种情况下要注意变量和对象的数量要一致,如下所示。

a=b=c=1    #第一种:多个变量指向同一个对象

a,b,c,d = 1,2,3,'Python'      #第二种:多个对象指向不同对象

(3)命令函数不一定是保留字符,比如求和函数sum()中的sum就不是保

留字符,sum是可以当作变量名使用的。

2

练习

考题1判断题

as、is、class、true都不可以作为变量名。(  )

答案:错误

解析:as、is、class确实是Python的保留字,但是true不是,虽然它和True长得很像,但是,根据Python的变量规则:大小写是敏感的,所以True和true不是一回事,所以true是可以当作变量名的。

考题2单选题

以下哪个变量命名不符合Python规范?()

A.语言='Python'

B._language='Python'

C. language='Python'

D..language='Python'

答案:D

解析:变量名称中除了下画线之外,其余的标点符号都不能有,所以D是错误的;A选项使用了中文,看似也是错误的,但是根据Python的变量规则,可以使用中文命名变量,只是为了尽可能靠近Python 的编程规范,不鼓励使用中文来命名变量而已,不能说用中文命名变量就错了。

考题3单选题

下列哪个不是Python的保留字?()

A. if

B. or

C.turtle

D. for

答案:C

解析:本题目中的C极具迷惑性,因为一级考试中要求同学们掌握turtle库,所以好多同学误认为turtle是保留字,但是,库文件名和保留字不能等同,库文件名是可以作为变量使用的。所以本题正确答案是C。

考题4单选题

运行下列语句后显示的结果是什么?(   )

b=2*a/4

a=1

print(a,b)

A.1,0.5

B.1,0

C.报错

D.0,1

答案:C

解析:这道题,看似a和b都有赋值,但是我们仔细分析,发现b在赋值时引入了变量a,但是这时候a还没有进行变量与对象的匹配(也可以理解为a还没有赋值),所以这时候a变量是在内存中不存在的,必然会报错。因而答案为C

最新文章

随机文章