Python标识符详解

在 Python 中,标识符(identifier)是用来命名变量、函数、类、模块等对象的名称。标识符遵循一定的语法规则和编码规范。

1. 语法规则

  • 字符范围 :必须以字母(a-z, A-Z)或下划线 _ 开头,后面可以跟字母、数字或下划线。
    • Python 3 支持 Unicode 标识符,即可以使用非英文字母(如中文、希腊字母等),但通常不推荐,以免降低可读性。
  • 大小写敏感 :myVar、myvar、MyVar 是不同的标识符。
  • 不能是关键字 :不能使用 Python 保留字(如 if、for、class 等)。可以用 keyword.kwlist 查看所有关键字。
  • 长度不限 :理论上无长度限制,但应保持合理长度。

2. 命名规范(PEP 8)

虽然语法允许很多形式,但遵循规范能让代码更易读:

  • 变量、函数、方法、模块名 :使用蛇形命名法(snake_case),全部小写,单词间用下划线分隔,例如:user_name、calculate_average()。
  • 类名 :使用驼峰命名法(CapWords,又称 PascalCase),每个单词首字母大写,例如:StudentInfo、DataProcessor。
  • 常量 :全部大写,单词间用下划线分隔,例如:MAX_SIZE、PI。
  • 私有成员 :以单下划线开头,表示"受保护的"或"内部使用",例如:_internal_method。
  • 名称重整 :以双下划线开头且不以双下划线结尾,会触发名称重整(name mangling),例如:__private_var。
  • 特殊方法 / 属性 :以双下划线开头和结尾,如 init、len,应避免自定义此类名称。

3. 有效与无效标识符示例

有效标识符 无效标识符(原因)
my_var 2var(以数字开头)
_private my-var(包含连字符)
数据 if(是关键字)
PI $money(包含特殊符号)
相关推荐
databook2 小时前
时间序列数据,先拆规律还是先查异常
python·数据挖掘·数据分析
师夷长技以自愈2 小时前
手搓 AI Agent 第 8 篇:从手写循环到画流程图——LangGraph 封装
人工智能·python
aifannihao3 小时前
Rust 1.100 的 DropGuard:用 Python 实测失败回滚与吞异常
python·rust·异常处理·标准库·contextlib
码农小河664 小时前
基于PHP的电商后台蜜罐系统
开发语言·php
starzy19904 小时前
深入理解Scala柯里化函数:函数链式变换
开发语言·scala
ShineWinsu5 小时前
对于Qt:QTreeWidget常见属性以及QTreeWidgetItem类的解析
开发语言·c++·qt·gui·客户端·多叉树·qtreewidget
落羽的落羽5 小时前
【C++】C++17的主要特性
linux·服务器·开发语言·c++·算法·机器学习
用户019027581615 小时前
天勤 tqsdk 能做 A 股行情吗?期货强项与股票数据选型
python
总要学点什么6 小时前
第108篇:三维特效-图片轨迹线效果——把贴图滚成一串箭头,想用它的本色反而整条消失
开发语言·javascript·ecmascript·gis·webgl·材质·cesium
2601_967979126 小时前
pip在Python中的9个必须知道的用法
python·pip·版本控制·包管理工具·requirements.txt