2026-10-19 12:49:42
Python中的变量命名规则是编写清晰、可维护代码的基础,以下是详细规则及最佳实践:
一、基础规则合法字符
变量名可包含字母(a-z, A-Z)、数字(0-9)、下划线(_),但不能以数字开头(如 1var 非法)。
区分大小写:name 和 Name 是不同变量。
禁止使用关键字:如 if、for、class 等(完整列表可通过 help("keywords") 查看)。
命名风格
小写字母加下划线(推荐):user_name、total_count
小驼峰(部分场景使用):userName
避免大驼峰(通常用于类名):ClassName
禁止混合符号:如 user-name(含连字符)、user@name(含特殊符号)均非法。
描述性与类型暗示
精准命名:用 day_of_week 替代 day,expired_cards 替代 cards。
类型直观:
布尔型:is_valid、has_error
数值型:max_retries、price_in_cents
避免复数表示单值:用 number_of_apples 而非 apples。
长度与一致性
适度长度:2-3个单词为宜(如 person_index),避免过长或过短(如 a、this_is_a_very_long_variable_name)。
统一性:同一概念用相同变量名(如函数内用 photo,则其他地方不用 image)。
避免易混淆命名
禁止相似变量名:如 users、users1、user3。
禁用否定词:用 is_special 替代 is_not_normal。
变量定义位置
靠近使用处:而非集中放在函数开头。
# 不推荐def process_data(): data = [] # 定义过早 # ...多行代码后... data.append(1)# 推荐def process_data(): # ...相关代码... data = [] # 定义在使用前 data.append(1)处理多返回值
使用 dict 或 namedtuple 替代直接返回多个值,增强可读性:
# 使用 dictdef get_info(): return {"name": "Alice", "age": 30}# 使用 namedtuplefrom collections import namedtupleInfo = namedtuple("Info", ["name", "age"])def get_info(): return Info(name="Alice", age=30)控制变量作用域
拆分长函数:若函数包含过多变量,拆分为小函数。
删除无用变量:及时清理未使用的变量(IDE通常会提示)。
遵循以下原则优化命名与代码结构:
Python变量命名的核心是清晰、一致、自解释。结合描述性命名、合理作用域和代码结构优化,能显著提升代码质量。参考示例与准则,逐步形成良好的编码习惯。