py变量名规则

作者: JSFnull | 来源:发表于2020-07-26 22:09 被阅读0次

[Python]需要使用标识符给变量命名,其实标识符就是用于给程序中变量、类、方法命名的符号(简单来说,标识符就是合法的名字)。

Python 语言的标识符必须以字母、下画线()开头,后面可以跟任意数目的字母、数字和下画线()。此处的字母并不局限于 26 个英文字母,可以包含中文字符、日文字符等。

由于 Python 3 支持 UTF-8 字符集,因此 Python 3 的标识符可以使用 UTF-8 所能表示的多种语言的字符。Python 语言是区分大小写的,因此 abc 和 Abc 是两个不同的标识符。

Python 2.x 对中文支持较差,如果要在 Python 2.x 程序中使用中文字符或中文变量,则需要在 Python 源程序的第一行增加“#coding:utf-8”,当然别忘了将源文件保存为 UTF-8 字符集。

在使用标识符时,需要注意如下规则:

  1. 标识符可以由字母、数字、下画线(_)组成,其中数字不能打头。
  2. 标识符不能是 Python 关键字,但可以包含关键字。
  3. 标识符不能包含空格。

例如下面变量,有些是合法的,有些是不合法的:

  • abc_xyz:合法。
  • HelloWorld:合法。
  • abc:合法。
  • xyz#abc:不合法,标识符中不允许出现“#”号。
  • abc1:合法。
  • 1abc:不合法,标识符不允许数字开头。

Python 的关键字和内置函数
Python 还包含一系列关键字和内置函数,一般也不建议使用它们作为变量名:
如果开发者尝试使用关键字作为变量名,Python 解释器会报错。
如果开发者使用内置函数的名字作为变量名,Python 解释器倒不会报错,只是该内置函数就被这个变量覆盖了,该内置函数就不能使用了。

Python 包含了如表 1 所示的关键字:

表 1 Python 关键字
False None True and as
assert 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
实际上 Python 非常方便,开发者可以通过 Python 程序来查看它所包含的关键字。例如,对于如下程序:

导入keyword 模块

import keyword

显示所有关键字

keyword.kwlist
从上面代码可以看出,程序只要先导入 keyword 模块,然后调用 keyword.kwlist 即可查看 Python 包含的所有关键字。运行上面程序,可以看到如下输出结果:
['False','None','True','and','as','assert','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']

上面这些关键字都不能作为变量名。

此外,Python 3 还提供了如表 2 所示的内置函数。

表 2 Python内置函数
abs() all() any() basestring() bin()
bool() bytearray() callable() chr() classmethod()
cmp() compile() complex() delattr() dict()
dir() divmod() enumerate() eval() execfile()
file() filter() float() format() frozenset()
getattr() globals() hasattr() hash() help()
hex() id() input() int() isinstance()
issubclass() iter() len() list() locals()
long() map() max() memoryview() min()
next() object() oct() open() ord()
pow() print() property() range() raw_input()
reduce() reload() repr() reversed() zip()
round() set() setattr() slice() sorted()
staticmethod() str() sum() super() tuple()
type() unichr() unicode() vars() xrange()
Zip() import() apply() buffer() coerce()
intern
上面这些内置函数的名字也不应该作为标识符,否则 Python 的内置函数会被覆盖。
注意:在 Python 2.x 中,print 是关键字而不是函数。上面这些内置函数(如 unicode())只是 Python 2.x 的内置函数,为了保证 Python 程序具有更好的兼容性,程序也不应该使用这些内置函数的名字作为标识符。

相关文章

  • py变量名规则

    [Python]需要使用标识符给变量命名,其实标识符就是用于给程序中变量、类、方法命名的符号(简单来说,标识符就是...

  • Shell变量的高级用法(一)——变量替换

    变量替换 语法说明${变量名#匹配规则}从变量开头进行规则匹配,将符合最短的数据删除${变量名##匹配规则}从变量...

  • Groovy语法

    注释 单行注释// 多行注释/**/ // GroovyDoc注释/** */ 变量名 普通变量名和Java规则一...

  • 1.4 PHP变量

    1. PHP变量的命名规则 ① 变量名必须以$开头,后面跟变量名② 变量名须以字母或下划线开头③ 变量名不能以数字...

  • Shell脚本

    一、Shell脚本的规则 1、变量的规则 1.1 定义变量规则: 变量名=值 1.2 shell定义变量的规则: ...

  • 变量名命名规则

    使用简单易识别的单词 这一条在码农界应该是公认的吧,不要搞太复杂太生僻的单词。有些人偏偏喜欢炫自己的英文水平,不考...

  • 《Python编程:从入门到实践》-1 变量和简单数据类型

    记录一些对自己重要的要点 运行.py文件:切换到对应路径 关于变量名 变量:可用于存储值的盒子 python变量名...

  • php简介

    一、变量 变量定义规则 变量以 $ 符号开始,后面跟着变量名称;变量名必须以字母或者下划线字符开始;变量名只能包含...

  • 0010-Shell 变量

    Shell 变量 定义变量时,变量名不需要加美元符号$。 注意,变量名与等号之间不能有空格。 变量名定义规则: 只...

  • Part1 Python编程基础(1)

    1.Python Base 1.1 操作符 1.2 常见数据类型 1.3 变量名 1.3.1 变量名规则 (1) ...

网友评论

    本文标题:py变量名规则

    本文链接:https://www.haomeiwen.com/subject/avoglktx.html