本文档总结 Python 中常见命名规则,便于编写清晰、可维护、符合 PEP 8 的代码。
package_name
user_service
data_utils
UserService
userService
DATA_UTILS
.py 结尾user_service.py
math_utils.py
config_loader.py
UserService.py
userservice.py
mathutils.py
模块名应尽量体现内容,例如:
user_service.py:用户相关服务file_utils.py:文件处理工具config_loader.py:配置加载器class UserProfile:
pass
class HttpClient:
pass
class DataProcessor:
pass
class userProfile:
pass
class http_client:
pass
类一般用于表示实体、对象或能力集合,例如:
UserProfileOrderServiceFileManagerdef get_user_name():
pass
def calculate_total():
pass
def save_to_file():
pass
def GetUserName():
pass
def total():
pass
函数名通常以“动作”开头,例如:
read_file()send_email()validate_password()is_、has_、can_user_name = "Tom"
age = 18
total_price = 99.9
is_active = True
has_permission = False
x = "Tom"
n = 18
a = True
变量名应该尽量说明数据是什么,例如:
user_namemax_scoreretry_countis_validMAX_RETRY = 5
DEFAULT_TIMEOUT = 30
PI = 3.1415926
MaxRetry = 5
defaultTimeout = 30
_name__secret_secret_key = "abc"
class Demo:
def __private_method(self):
pass
def public_method(self):
self.__private_method()
不要使用 Python 内置名称,例如:
list
str
sum
dict
set
int
如果必须使用,建议加上更明确的前后缀,比如:
list_data
user_dict
| 类型 | 命名方式 | 示例 |
|---|---|---|
| 包 | lower_case | data_utils |
| 模块 | snake_case | file_handler.py |
| 类 | PascalCase | UserManager |
| 函数 | snake_case | calculate_total() |
| 变量 | snake_case | student_name |
| 常量 | UPPER_SNAKE_CASE | MAX_RETRY |
# 包
package_name
# 模块
module_name.py
# 类
class UserAccount:
pass
# 函数
def create_user_account():
pass
# 变量
user_name = "Alice"
account_balance = 1000
# 常量
MAX_LOGIN_ATTEMPTS = 5
Python 命名规范的核心是:
遵循这些规则后,代码会更容易阅读、维护和协作。