美文网首页
详解Python标识符命名规范

详解Python标识符命名规范

作者: 帅帅滴小哥哥 | 来源:发表于2019-08-12 16:22 被阅读0次

简单地理解,标识符就是一个名字,就好像我们每个人都有属于自己的名字,它的主要作用就是作为变量、函数、类、模块以及其他对象的名称。

Python 中标识符的命名不是随意的,而是要遵守一定的命令规则,比如说:

标识符是由字符(A~Z 和 a~z)、下划线和数字组成,但第一个字符不能是数字。

标识符不能和 Python 中的保留字相同。有关保留字,后续章节会详细介绍。

Python中的标识符中,不能包含空格、@、% 以及 $ 等特殊字符。

例如,下面所列举的标识符是合法的:

UserID

name

mode12

user_age

以下命名的标识符不合法:

4word    #不能以数字开头

try          #try是保留字,不能作为标识符

$money #不能包含特殊字符

在 Python 中,标识符中的字母是严格区分大小写的,也就是说,两个同样的单词,如果大小格式不一样,多代表的意义也是完全不同的。比如说,下面这 3 个变量之间,就是完全独立、毫无关系的,它们彼此之间是相互独立的个体。

number = 0

Number = 0

NUMBER = 0

Python 语言中,以下划线开头的标识符有特殊含义,例如:

以单下划线开头的标识符(如 _width),表示不能直接访问的类属性,其无法通过 from...import* 的方式导入;

以双下划线开头的标识符(如__add)表示类的私有成员;

以双下划线作为开头和结尾的标识符(如 __init__),是专用标识符。

因此,除非特定场景需要,应避免使用以下划线开头的标识符。

但我们应尽量避免使用汉字作为标识符,这会避免遇到很多奇葩的错误。

标识符的命名,除了要遵守以上这几条规则外,不同场景中的标识符,其名称也有一定的规范可循,例如:当标识符用作模块名时,应尽量短小,并且全部使用小写字母,可以使用下划线分割多个字母,例如 game_mian、game_register 等。当标识符用作包的名称时,应尽量短小,也全部使用小写字母,不推荐使用下划线,例如 com.mr、com.mr.book 等。当标识符用作类名时,应采用单词首字母大写的形式。例如,定义一个图书类,可以命名为 Book。模块内部的类名,可以采用 "下划线+首字母大写" 的形式,如 _Book;函数名、类中的属性名和方法名,应全部使用小写字母,多个单词之间可以用下划线分割;常量命名应全部使用大写字母,单词之间可以用下划线分割。

详解Python标识符命名规范-Python学习网

相关文章

  • 详解Python标识符命名规范

    简单地理解,标识符就是一个名字,就好像我们每个人都有属于自己的名字,它的主要作用就是作为变量、函数、类、模块以及其...

  • loumingyu-Python-day01

    变量 变量名自定义,要满足标识符命名规则 标识符 标识符命名规则是Python中定义各种名字的时候的统一规范,具体...

  • 全新Python学习day01

    变量 变量名自定义,要满足标识符命名规则 标识符 标识符命名规则是Python中定义各种名字的时候的统一规范,具体...

  • 标识符与关键字

    标识符 标识符命名规则: 命名规则:是语法,不遵守就编译错误。 标识符命名规范:大家尽量按照统一规范来进行命名,不...

  • 变量的命名及规范

    命名规范 标识符 变量【重点】

  • Python标识符命名规范

    简单地理解,标识符就是一个名字,就好像我们每个人都有属于自己的名字,它的主要作用就是作为变量、函数、类、模块以及其...

  • 3. python3语法

    python3变量 1 声明变量语法:标识符/变量名=变量值 2 变量的命名规范(1). 在 Python 里...

  • 标识符的命名规则与规范

    标识符的命名规则:(规则不对,则编译不通过) 标识符的命名规范:

  • 从零开始学Java(五)Java标识符、关键字和变量

    一、标识符 1、标识符可以标识什么,什么是标识符,怎么理解这个概念! 2、标识符的命名规则 3、标识符的命名规范 ...

  • 2018-06-28 python命名规范

    Python命名规范 Google Python****命名规范 module_name, 模块 package...

网友评论

      本文标题:详解Python标识符命名规范

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