Python的命名规范

文章目录

  • 一、python变量名命名的硬性规则
    • 1.1. 变量名大小写敏感
    • 1.2. python的变量名字中可以包含英文、下划线、数字,但是不能以数字开头。
  • 二、不同风格命名的变量代表不同的类型
    • 2.1命名法
    • 2.2.模块(module)命名风格
    • 2.3 ,正确的模块名
  • 2.4不推荐的模块名
  • 三,类(class)的命名
  • 3.1类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头
    • 3.2函数(function)的命名
  • 四,变量(variable)的命名
    • 4.1,变量名尽量小写, 如有多个单词,用下划线隔开
  • 五,常量(constant)的命名
  • 六、“下划线”开头的特殊命名
    • 6.1单下划线开头的命名
    • 6.2.双下划线开头的命名
    • 6.3.双下划线开头并且双下划线结尾的命名

一、python变量名命名的硬性规则

1.1. 变量名大小写敏感

python变量名区分大小写,也就是Student和student在python语言中代表两个不同的名字。

1.2. python的变量名字中可以包含英文、下划线、数字,但是不能以数字开头。

也就是说,student_id、student1、student_1、student、_student、_等都是合理的命名,但是1student就是非法的命名。

二、不同风格命名的变量代表不同的类型

2.1命名法

python变量命名一般采用蛇形命名法(毕竟python的本意就是大蟒蛇),也就是如果变量名由两个单词组成,那么使用下划线来连接这两个单词,比如student_id。当然,我们也会在python中看到类似驼峰命名法的变量名,对于专业的程序猿来说,这些命名都不是随便写的,他们符合一定的标准,下面总结以下:

2.2.模块(module)命名风格

模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况)

2.3 ,正确的模块名

import decoder import html_parser

2.4不推荐的模块名

三,类(class)的命名

3.1类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头

class Farm():
pass

class AnimalFarm(Farm):
pass

class _PrivateFarm(Farm):
pass

3.2函数(function)的命名

函数名一律小写,如有多个单词,用下划线隔开。

def run():
pass

def run_with_env():
pass

四,变量(variable)的命名

4.1,变量名尽量小写, 如有多个单词,用下划线隔开

if name == ‘main’:
count = 0
school_name = ‘’

五,常量(constant)的命名

如果我们想用一个符号来代表常量(值是不变的量,比如光速、π等),采用全部大写,如有多个单词,使用下划线隔开。

MAX_CLIENT = 100 MAX_CONNECTION = 1000 CONNECTION_TIMEOUT = 600

六、“下划线”开头的特殊命名

很多时候,我们在python的源代码中会看到下划线开头的变量,初学者看到这些变量会感觉怪怪的。确实,这些“_”开头的命名是具有特殊含义的:

6.1单下划线开头的命名

如果类变量以单下划线“_”开头,代表这个变量不能被直接访问,类似于C++中的protected型,这样的变量也不能被 import
module_name导入。 使用单下划线(one
underline)开头的方法,则表示该方法不是AP的一部分,不要直接访问(虽然语法上访问也没有什么问题)。

6.2.双下划线开头的命名

以双下划线(two underlines)开头的类变量,表示为类的私有成员,不能被导入和其他类变量访问。
对于类中的方法,使用双下划线开头开头表示子类不能覆写该方法。除非你真的知道你在干什么,否则不要使用这种方式。

6.3.双下划线开头并且双下划线结尾的命名

魔法方法:以双下划线开头和双下划线结尾的变量是Python的专用标识,有其特殊的身份。我们一般称这样的方法为“魔法方法”(magic
method)。

魔法方法是python内置方法,不需要主动调用,存在的目的是为了给python的解释器进行调用,几乎每个魔法方法都有一个对应的内置函数,或者运算符,当我们对这个对象使用这些函数或者运算符时就会调用类中的对应魔法方法,可以理解为重写这些python的内置函数。
当你想让自己定义的对象也可以像Python内置的对象一样使用内置的一些函数或操作符(比如len、add、+、、==等)时,你可以定义该类方法。
当然还有些属性只在末尾加了但下划线这仅仅是为了避免我们起的一些名字和Python保留关键字冲突,没有特殊含义。

你可能感兴趣的:(python,python,开发语言)