python编程规范(第四部分)

## 命名规范
命名规范共有六种,分别为:模块名命名,变量命名,常量或者全局变量命名,函数命名,类命名和类里面函数和方法参数等。
### 模块名命名
模块尽量使用小写命名,首字母保持小写,尽量不要用下划线。(除非多个单词,且数量不多的情况)
示例:
```python
# 正确

import decoder

import html_parser

# 不推荐

import Decoder
```
### 变量命名
1.不要使用字母I (小写的L), O (大写的O), I (大写的I)作为单字符的变量名。在有些字体里面,这些字符无法与数字0和1区分。如果想用I, 可使用L代替。
2.变量名尽量小写, 如有多个单词,用下划线隔开。
示例:
```python
count = 0
this_is_var = 0
```
### 常量或者全局变量命名
1.全部大写,如有多个单词,用下划线隔开。
2.全⼤写+下划线式驼峰。
示例:
```python
MAX_CLIENT = 100
```
### 函数命名
1.函数名应该小写,如有多个单词,用下划线隔开。
2.大小写混合仅在为了兼容原来主要以大小写混合风格的情况下使用,保持向后兼容。
3.私有函数在函数前加一个下划线。
示例:
```python
def run():
    pass

def run_with_env():
    pass


class Person():
    def _private_func():
        pass
```
### 类命名
1.类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头。
2.在接口被文档化并且主要被用于调用的情况下,可以使用函数的命名风格代替。
3.对于内置的变量命名有一个单独的约定:大部分内置变量是单个单词(或者两个单词连接在一起),首字母大写的命名法只用于异常名或者内部的常量。
```python
class Farm():
    pass

class AnimalFarm(Farm):
    pass

class _PrivateFarm(Farm):
    pass
```
### 类里面函数和方法参数
1.始终要将self作为实例方法的第一个参数。
2.始终要将cls作为类方法的第一个参数。
3.如果函数的参数名和已有关键字冲突,在最后加大意下划线比缩写或者随意拼写更好。因此class_比clss更好。
#### 注意事项
1.不要中英文混编。
2.不要有a、b、c这种没有意义的命名。
3.不要怕名字长就随便缩写,比如person_info 缩写成pi。
4.不要用大小写区分变量类型,比如a是int类型,A是String类型。
5.不要使用容易引起混淆的变量名。
6.bool变量⼀般加上前缀 is_ 如:is_success。
7.变量名不要用系统关键字,如 dir type str等等。
#### 以下用下画线作前导或结尾的特殊形式是被公认的:
1._single_leading_underscore(以一个下画线作前导):例如,“from M import *”不会导入以下画线开头的对象。
2.single_trailing_underscore_(以一个下画线结尾):用于避免与 Python 关键词的冲突,例如“Tkinter.Toplevel(master, class_='ClassName')”。
3.__double_leading_underscore (双下画线):从 Python 1.4 起为类私有名。
4.__double_leading_and_trailing_underscore__:特殊的(magic) 对象或属性,存在于用户控制的(user-controlled)名字空间,例如:__init__、__import__ 或 __file__。
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

威胁情报收集站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值