python标识符命名规范原理解析


Posted in Python onJanuary 10, 2020

这篇文章主要介绍了python标识符命名规范原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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

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

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

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

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

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

UserID
name
mode12
user_age

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

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

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

number = 0
Number = 0
NUMBER = 0

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

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

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

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

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

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

PHP中文网 = http://php.cn

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

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

·当标识符用作模块名时,应尽量短小,并且全部使用小写字母,可以使用下划线分割多个字母,例如 game_mian、game_register 等。

·当标识符用作包的名称时,应尽量短小,也全部使用小写字母,不推荐使用下划线,例如 com.mr、com.mr.book 等。

·当标识符用作类名时,应采用单词首字母大写的形式。例如,定义一个图书类,可以命名为 Book。

·模块内部的类名,可以采用 "下划线+首字母大写" 的形式,如 _Book;

·函数名、类中的属性名和方法名,应全部使用小写字母,多个单词之间可以用下划线分割;

·常量命名应全部使用大写字母,单词之间可以用下划线分割;

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python socket 超时设置 errno 10054
Jul 01 Python
详细解读Python的web.py框架下的application.py模块
May 02 Python
flask + pymysql操作Mysql数据库的实例
Nov 13 Python
Python爬虫常用小技巧之设置代理IP
Sep 13 Python
python实现定时压缩指定文件夹发送邮件
Dec 22 Python
python中matplotlib条件背景颜色的实现
Sep 02 Python
python 定义类时,实现内部方法的互相调用
Dec 25 Python
解决python replace函数替换无效问题
Jan 18 Python
python3中的logging记录日志实现过程及封装成类的操作
May 12 Python
Python 解决空列表.append() 输出为None的问题
May 23 Python
详解Flask开发技巧之异常处理
Jun 15 Python
Python可视化学习之seaborn绘制矩阵图详解
Feb 24 Python
pytorch1.0中torch.nn.Conv2d用法详解
Jan 10 #Python
pytorch 利用lstm做mnist手写数字识别分类的实例
Jan 10 #Python
Tensorflow Summary用法学习笔记
Jan 10 #Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
Jan 10 #Python
python numpy数组复制使用实例解析
Jan 10 #Python
关于Pytorch的MNIST数据集的预处理详解
Jan 10 #Python
详解pycharm连接不上mysql数据库的解决办法
Jan 10 #Python
You might like
PHP 和 XML: 使用expat函数(一)
2006/10/09 PHP
高质量PHP代码的50个实用技巧必备(上)
2016/01/22 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
2017/09/04 PHP
thinkPHP框架中执行事务的方法示例
2018/05/31 PHP
javascript 装载iframe子页面,自适应高度
2009/03/20 Javascript
Jquery作者John Resig自己封装的javascript 常用函数
2009/11/09 Javascript
JavaScript 在网页上单击鼠标的地方显示层及关闭层
2012/12/30 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
JS多物体实现缓冲运动效果示例
2016/12/20 Javascript
JavaScript实现垂直滚动条效果
2017/01/18 Javascript
react.js 获取真实的DOM节点实例(必看)
2017/04/17 Javascript
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
setTimeout与setInterval的区别浅析
2019/03/23 Javascript
详解使用WebPack搭建React开发环境
2019/08/06 Javascript
JS实现简易留言板增删功能
2020/02/08 Javascript
基础的十进制按位运算总结与在Python中的计算示例
2016/06/28 Python
使用Anaconda3建立虚拟独立的python2.7环境方法
2018/06/11 Python
python爬虫自动创建文件夹的功能
2018/08/01 Python
Python 限制线程的最大数量的方法(Semaphore)
2019/02/22 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
Pytorch DataLoader 变长数据处理方式
2020/01/08 Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
2020/02/11 Python
CSS3实现多重边框的方法总结
2016/05/31 HTML / CSS
Ellos丹麦:时尚和服装在线
2016/09/19 全球购物
查询优化的一般准则有哪些
2015/03/08 面试题
机械个人求职信范文
2014/01/24 职场文书
学生党员的自我评价范文
2014/03/01 职场文书
企业安全生产承诺书
2014/05/22 职场文书
2014企业领导班子四风对照检查材料思想汇报
2014/09/17 职场文书
学生会干部自我鉴定2014
2014/09/18 职场文书
2015年学校教育教学工作总结
2015/04/22 职场文书
优秀团员主要事迹材料
2015/11/05 职场文书
教师素质教育心得体会
2016/01/19 职场文书
Ajax常用封装库——Axios的使用
2021/05/08 Javascript
深入浅析python3 依赖倒置原则(示例代码)
2021/07/09 Python