Python学习精粹011:给变量命名与赋值

本文详细阐述了Python编程中变量命名的规则,包括命名规范(如字母、数字、下划线,不能以数字开头,避免空格),避免使用Python关键字和内置标识符,以及推荐使用有意义且一致的命名风格,如驼峰命名法和大小写策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

“好名字可能预示着好的开始。”

标识符是指以符号来标识事物以便识别。在编程语言中,标识符是有特定含义的字符,用来识别变量、常量、函数、类等。变量名即是标识符的一种。

在Python中,给变量命名时,必须遵守一些约定的规则,否则将引发错误,具体如下:

1. 变量名只能包含字母、数字和下划线(_),且必须以字母或下划线(_)开头,不能以数字开头。

如下所示:

numer1 = 123 #@01 

number_1 = 123 #@02 

1number = 123 #@03 

1_number = 123 #@04 

number$1 = 123 #@05 

在#@01、#@02处的变量命名是合法的。

在#@03、#@04、#@05处的变量命名,以数字开头或包含有特殊字符(如$),是不合法的。如强制使用非法变量,会提示语法错误信息“SyntaxError: invalid syntax”。

需要注意的是,使用中文字符来命名变量虽然合法,但不建议用英文字母、数字和下划线(_)之外的其他字符来命名变量。

如下所示:

变量1 = 'Hello'

print(变量1)

2. 变量名不能包含空格,但可以用下划线(_)来分隔。

如下所示:

one message = "After all, tomorrow is another day!" #@01 

one_message = "After all, tomorrow is another day!" #@02 

message_1 = "After all, tomorrow is another day!" #@03 

在#@01处,变量名包含了空格,是非法的变量名。

在#@02、#@03处,变量名中通过下划线(_)来分隔单词或数字等,是合法的变量名。

3. 不要使用Python关键字(又称:保留字)作为变量名,因为这些关键字在Python中有特殊意义。

如关键字def用于定义一个函数,关键字import用于导入一个指定模块等。

在当前最新版本的Python 3.12中,关键字有35个,通过执行以下Python代码可查看这些关键字:

>>> import keyword

print(keyword.kwlist)

打印输出Python的所有关键字:

['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']

如果要判断变量名(如“continue”)是否为Python关键字,可通过执行以下语句:

import keyword

print(keyword.iskeyword('continue'))

如返回True,则表示为Python关键字,否则不是。

4. 避免使用Python内置标识符作为变量名。如果变量名与内置标识符相同,则会引发错误或变量会覆盖相应的内置标识符的用途。

需要注意的是:Python关键字并不都是包含在内置标识符中,只有FALSE、None、TRUE关键字包含在内置标识符中;内置函数名则全都被包含在内置标识符中;Python关键字与内置函数名并无同名的。

如Python内置的print函数用于打印输出,在交互式解释器中执行以下Python代码:

>>> print = 'I am big!'

>>> print(print)

Traceback (most recent call last):

  File "<pyshell#1>", line 1, in <module>

    print(print)

TypeError: 'str' object is not callable

如上所示,将会引发错误“TypeError: 'str' object is not callable”,也就是说,当尝试调用一个不可调用的对象时,会发生该错误。

接下来,在交互式解释器中执行以下Python代码:

>>> print(abs) #@01 

<built-in function abs>

>>> print(abs(-123)) #@02 

123

>>> abs = 'You talking to me?' #@03 

>>> print(abs) #@04 

You talking to me?

在#@01处,执行结果表明abs为Python内置函数;

在#@02处,执行结果表明使用了abs函数来计算数字的绝对值;

在#@03处,给变量abs赋值时,即将同名的内置函数abs覆盖了,因而在#@04处的执行结果将为abs变量的值。

下面列出了Python 3.12中的内置函数:

表3.2 Python内置函数

A

E

L

R

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值