Python的标识符命名规范

news/2024/11/20 1:38:09/

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

Python 中标识符的命名不是随意的,而是要遵守一定的命令规则,比如说:
标识符是由字符(A~Z 和 a~z)、下划线和数字组成,但第一个字符不能是数字。


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


Python中的标识符中,不能包含空格、@、% 以及 $ 等特殊字符。
例如,下面所列举的标识符是合法的:

UserID
name
mode12
user_age

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

4word    #不能以数字开头
try          #try是保留字,不能作为标识符
$money #不能包含特殊字符 

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

number = 0
Number = 0
NUMBER = 0

  1. Python 语言中,以下划线开头的标识符有特殊含义,例如:
    • 以单下划线开头的标识符(如 _width),表示不能直接访问的类属性,其无法通过 from...import* 的方式导入;
    • 以双下划线开头的标识符(如__add)表示类的私有成员;
    • 以双下划线作为开头和结尾的标识符(如 __init__),是专用标识符。
    因此,除非特定场景需要,应避免使用以下划线开头的标识符。


另外需要注意的是,Python 允许使用汉字作为标识符,例如:

中国 = "China"

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

标识符的命名,除了要遵守以上这几条规则外,不同场景中的标识符,其名称也有一定的规范可循,例如:

  • 当标识符用作模块名时,应尽量短小,并且全部使用小写字母,可以使用下划线分割多个字母,例如 game_mian、game_register 等。
  • 当标识符用作包的名称时,应尽量短小,也全部使用小写字母,不推荐使用下划线,例如 com.mr、com.mr.book 等。
  • 当标识符用作类名时,应采用单词首字母大写的形式。例如,定义一个图书类,可以命名为 Book。
  • 模块内部的类名,可以采用 "下划线+首字母大写" 的形式,如 _Book;
  • 函数名、类中的属性名和方法名,应全部使用小写字母,多个单词之间可以用下划线分割;
  • 常量命名应全部使用大写字母,单词之间可以用下划线分割;


有读者可能会问,如果不遵守这些规范,会怎么样呢?答案是程序照样可以运行,但遵循以上规范的好处是,可以更加直观地了解代码所代表的含义,以 Book 类为例,我们可以很容易就猜到此类与书有关,虽然将类名改为 a(或其它)不会影响程序运行,但通常不这么做。 


http://www.ppmy.cn/news/225179.html

相关文章

在虚拟机上安装MySQL和Hive

文章目录 零、学习目标一、Hive概述(一)Hive的SQL - HQL(二)数据库与数据仓库(三)Hive的适用场景二、下载、安装和配置MySQL(一)下载MySQL组件压缩包(二)将MySQL组件压缩包上传到虚拟机(三)删除系统自带的MariaDB1、查询mariadb2、删除mariadb(四)安装MySQL组件1…

r7与matlab是否兼容,R7-2700配什么主板好 AMD锐龙7 2700适配主板推荐

AMD第二代锐龙已经全面上市了,虽然Intel也发布了酷睿八代处理器进行竞争,但从市面表现来看,二代锐龙还是蛮有竞争力的。由于之前B450主板尚未上市,所以出现了二代锐龙需要搭配B350主板,那么R7-2700配什么主板好&#x…

amd建议超频吗_AMD锐龙3 2200G支持超频吗?AMD R3-2200G超频后配什么主板合适?

刚刚我们介绍了AMD锐龙5 2400G支持三超,不仅CPU支持超频,同时GPU、内存还支持超频,那么,作为R5 2400G低配版的R3 2200G是否也支持超频呢?如果支持超频,最佳搭配什么主板呢?下面小编就来解答一下…

苹果手机可以投影到墙上吗_手机投影到墙上(不用投影仪将手机画面投到墙)...

手机上制作投影仪方式流程: 原材料与专用工具:大屏幕手机手机上;鞋小盒子最少要有一大一小2个;高透高倍放大镜,用完的透明胶布纸环,透明胶布 第一步,将大鞋盒、纸盒正前方成孔,成孔前…

锐龙R3-3100配什么主板

AMD锐龙R3 3100采用了目前最先进的7纳米工艺制程的Zen2架构,采用依然基于AM4接口设计,这也是AMD良心的一面,方便锐龙平台老用户进行升级。 R3-3100配什么主板这些点很重要!看完你就知道了 https://list.jd.com/list.html? R3 3100拥有4核8线…

锐龙R3-3200G 配什么主板

AMD锐龙R3-3200G基于12纳米工艺的Zen架构设计,并没有采用全新的7纳米Zen2架构,接口类型为AM4,拥有4核4线程设计,基础频率为3.6GHz,加速频率为4.0GHz,拥有三级缓存为4MB,内存支持DDR4-2933频率&a…

苹果手机可以投影到墙上吗_怎么将手机上的投影到电视上或墙上?

我们日常在家里的时候,使用手机观看直播或者电影,有时候觉得屏幕太小,会选择将手机投屏到更大的显示器上面观看,那么具体我们该如何操作呢?下面小编给大伙说说。 手机投屏到电视上 这个比较简单,也是我们用…

【解决】向日葵开机插座如何连接2.4G与5G双频合一的WiFi

文章目录 1. 按2. 操作步骤 1. 按 向日葵的这款插座只能连接2.4G的WiFi,对2.4G与5G双频合一的WiFi支持不够友好,但却并不是不可以连接双频WiFi,我们只需要根据电磁波的特性与向日葵App的前台检测算法,轻松连接双频WiFi。 原理&am…