Python变量名的命名规范遵循 PEP 8标准,具体要求如下:
一、基本规则
字符组成
只能包含字母(大小写)、数字和下划线(_),且 不能以数字开头。例如:
```python
valid = 10
invalid = 2nd_score 应改为 second_score
```
大小写敏感
`Variable` 和 `variable` 被视为不同变量。
保留字与内置函数
禁止使用Python关键字(如`if`、`for`、`class`)和内置函数名(如`len`、`range`)。
二、命名约定
命名风格
- 小写加下划线(snake_case):适用于变量、函数和模块名,例如`user_name`、`calculate_total_price`。 - 驼峰式(CamelCase):适用于类名,例如`MyClass`。
单词分隔
多个单词之间用下划线分隔,避免使用空格。例如:
```python
不推荐
greeting_message = "Hello, world!"
推荐
greeting = "Hello, world!"
```
描述性命名
名称应清晰表达变量用途,例如`user_age`优于`a`或`b`。
三、其他注意事项
避免缩写
除非是广泛认可的组合(如`URL`),否则应使用完整单词。
一致性
在同一项目中保持命名风格一致,建议团队统一遵循PEP 8。
特殊情况
- 布尔变量建议使用`is`、`has`等前缀,例如:
```python
is_active = True
has_permission = False
```
- 常量通常使用全大写,例如:
```python
MAX_USERS = 100
```
四、常见错误示例
| 错误类型 | 示例 | 正确写法 |
|------------------------|--------------------|------------------|
| 以数字开头 | 2nd_score | second_score |
| 使用保留字 | if = 10 | grade = 10|
| 混用大小写 | User_name | user_name|
| 缺少下划线分隔单词 | greeting message | greeting = "Hello" |
遵循以上规范可提升代码可读性、可维护性,并减少因命名不当引发的错误。