Python 命名规范与最佳实践

 更新时间:2025年03月17日 09:44:39   作者:燃灯工作室  
本文介绍了Python命名规范与最佳实践,包括变量名、模块名、类名、函数名和常量名的命名规则,强调了命名的清晰性、一致性、科学性和避免使用特殊符号,感兴趣的朋友一起看看吧

1. 规范

1.变量名区分大小写;

2.严禁使用关键字作为变量名;

3.确定自己的命名风格,不可随意变换;

4.命名应该科学严谨,切勿太长或者表达比较模糊;

5.命名中若使用特殊约定或缩写,则要有注释说明;

6.尽量不要使用中文字符和纯数学字符,避免编码错误;

7.名字由英文字母、数字、下划线组成,如abc,abc13和_abc等;

8.要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写;

9.同一软件产品内,应规划好接口部分(变量、结构、函数及常量)的命名,防止编译、链接时产生冲突。

2. 参考

类型公有/外部成员私有/内部成员
模块(module)my_naming_convention_my_naming_convention
包(package)my_naming_convention
类(class)MyNamingConvention_MyNamingConvention
异常(Exception)MyNamingConvention
函数(function)my_naming_convention()_my_naming_convention()
全局/类常量(constant)MY_NAMING_CONVENTION_MY_NAMING_CONVENTION
全局/类变量(variable)my_naming_convention_my_naming_convention

3. 缩写

命名应当尽量使用全拼写的单词,缩写的情况有如下两种:

  • 常用的缩写,如XML、ID等,在命名时也应只大写首字母,如XmlParser。

  • 命名中含有长单词,对某个单词进行缩写。这时应使用约定成俗的缩写方式。

例如:

function 缩写为 fn

text 缩写为 txt

object 缩写为 obj

count 缩写为 cnt

number 缩写为 num

4. 前导后缀下划线

  • 一个前导下划线:表示非公有。
  • 一个后缀下划线:避免关键字冲突。
  • 两个前导下划线:当命名一个类属性引起名称冲突时使用。
  • 两个前导和后缀下划线:“魔”(有特殊用图)对象或者属性,例如__init__或者__file__。绝对不要创造这样的名字,而只是使用它们。

注意:关于下划线的使用存在一些争议。

5. 应该避免的名称

  • 单字母名称, 除了计数器和迭代器.
  • 包/模块名中的连字符(-)
  • 双下划线开头并结尾的名称(Python 保留, 例如__init__)

到此这篇关于Python 命名规范与最佳实践的文章就介绍到这了,更多相关Python 命名规范内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 正确理解python迭代器与生成器

    正确理解python迭代器与生成器

    在Python这门语言中,生成器毫无疑问是最有用的特性之一。与此同时,也是使用的最不广泛的Python特性之一。究其原因,主要是因为,在其他主流语言里面没有生成器的概念。本文将详细介绍python迭代器与生成器
    2021-06-06
  • 如何在django中添加日志功能

    如何在django中添加日志功能

    这篇文章主要介绍了django中添加日志功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Python内置模块Collections的使用教程详解

    Python内置模块Collections的使用教程详解

    collections 是 Python 的一个内置模块,所谓内置模块的意思是指 Python 内部封装好的模块,无需安装即可直接使用。本文将详解介绍Collections的使用方式,需要的可以参考一下
    2022-03-03
  • Python脚本如何在bilibili中查找弹幕发送者

    Python脚本如何在bilibili中查找弹幕发送者

    这篇文章主要介绍了如何在bilibili中查找弹幕发送者,本文给大家分享小编写的一个python脚本来实现bilibili弹幕发送者,需要的朋友可以参考下
    2020-06-06
  • 使用Python+Appuim 清理微信的方法

    使用Python+Appuim 清理微信的方法

    这篇文章主要介绍了使用Python+Appuim 清理微信,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • 在Python程序和Flask框架中使用SQLAlchemy的教程

    在Python程序和Flask框架中使用SQLAlchemy的教程

    SQLAlchemy为Python程序与SQL语句之间建立了映射,是Python操作数据库的利器,这里我们将来看在Python程序和Flask框架中使用SQLAlchemy的教程,需要的朋友可以参考下
    2016-06-06
  • python中的全局变量用法分析

    python中的全局变量用法分析

    这篇文章主要介绍了python中的全局变量用法,详细分析了Python全局变量使用中的利弊与相关技巧,需要的朋友可以参考下
    2015-06-06
  • pandas求行最大值及其索引的实现

    pandas求行最大值及其索引的实现

    工作需要,查询某一行中的最大值及其索引,本文主要介绍了pandas求行最大值及其索引的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • Python-Selenium自动化爬虫

    Python-Selenium自动化爬虫

    本文介绍Python-Selenium自动化爬虫,Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器,可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,xiamian neir 需要的朋友可以参考下
    2022-01-01
  • Python装饰器实现几类验证功能做法实例

    Python装饰器实现几类验证功能做法实例

    下面小编就为大家带来一篇Python装饰器实现几类验证功能做法实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05

最新评论