news 2026/5/11 11:12:41

Python标识符命名规范

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python标识符命名规范

一、必须遵守的语法规则(违反会直接报错)

标识符是用来给变量、函数、类、模块等命名的字符序列,必须符合以下硬性要求:

  1. 字符组成:只能由字母(A-Z/a-z)、数字(0-9)、下划线(_)组成,且不能以数字开头。✅ 合法示例:nameage18user_name_score❌ 非法示例:18age(以数字开头)、user-name(含减号)、my@email(含特殊符号)、姓名(非 ASCII 字符,虽部分 Python 环境能运行,但不推荐)
  2. 大小写敏感:Python 对标识符的大小写严格区分。示例:Namename是两个完全不同的标识符,AGEage也互不相关。
  3. 不能使用关键字:Python 的保留关键字(如ifelsefordef等)不能作为标识符。可通过以下代码查看所有 Python 关键字:

    python

    运行

    import keyword print(keyword.kwlist)
    ❌ 错误示例:def = 10def是关键字)、class = "student"class是关键字)

二、推荐遵循的 PEP 8 风格规范(提升代码可读性)

PEP 8 是 Python 官方的代码风格指南,以下是标识符命名的核心规范,也是行业通用标准:

1. 变量 / 函数 / 模块名:小写 + 下划线(蛇形命名法,snake_case)
  • 核心规则:全部小写,多个单词之间用下划线分隔,简洁易懂。
  • ✅ 示例:

    python

    运行

    # 变量 user_name = "张三" student_age = 20 total_score = 95.5 # 函数 def calculate_average_score(scores): return sum(scores) / len(scores)
2. 常量名:全大写 + 下划线
  • 核心规则:全部大写,多个单词用下划线分隔,用于表示不会修改的常量(Python 无真正常量,靠命名约定)。
  • ✅ 示例:

    python

    运行

    MAX_RETRY = 3 # 最大重试次数 PI = 3.1415926 # 圆周率 DEFAULT_TIMEOUT = 10 # 默认超时时间
3. 类名:大驼峰命名法(CamelCase)
  • 核心规则:每个单词首字母大写,无下划线,这是类名的专属规范。
  • ✅ 示例:

    python

    运行

    class StudentInfo: # 学生信息类 def __init__(self, name, age): self.name = name self.age = age class OrderProcessing: # 订单处理类 pass
4. 私有标识符:单下划线 / 双下划线开头
  • 单下划线(_xxx):约定俗成的 “私有” 标识,提示外部不要直接访问(仅靠约定,语法上仍可访问)。✅ 示例:

    python

    运行

    def _private_function(): # 私有函数,仅内部使用 return "内部数据" class Person: def __init__(self): self._id = 123 # 私有属性
  • 双下划线(__xxx):Python 会自动做 “名称修饰”,真正限制外部访问(避免子类重写或外部调用)。✅ 示例:

    python

    运行

    class Person: def __init__(self): self.__password = "123456" # 强私有属性 p = Person() print(p.__password) # 直接访问会报错 print(p._Person__password) # 特殊方式可访问(不推荐)

三、额外的实用命名建议(新手必看)

  1. 见名知意:避免用无意义的字符(如abx1),名称要体现用途。❌ 不好的示例:s = "张三"n = 20✅ 好的示例:student_name = "张三"student_age = 20
  2. 长度适中:不要过长(如calculate_the_average_score_of_all_students),也不要过短(如avg),兼顾简洁和清晰(推荐calculate_student_avg_score)。
  3. 避免歧义:不要用易混淆的字符,比如l(小写 L)、O(大写 O)、0(数字 0),容易看错。

总结

  1. 语法规则是底线:标识符只能由字母 / 数字 / 下划线组成,不能以数字开头、不能用关键字,且大小写敏感;
  2. 风格规范是标配:变量 / 函数用蛇形命名(snake_case)、常量全大写、类名用大驼峰(CamelCase);
  3. 命名核心原则:见名知意、简洁规范,让自己和他人能快速理解代码含义。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/10 6:33:41

文献怎么查:高效查找文献的实用方法与步骤指南

做科研的第一道坎,往往不是做实验,也不是写论文,而是——找文献。 很多新手科研小白会陷入一个怪圈:在知网、Google Scholar 上不断换关键词,结果要么信息过载,要么完全抓不到重点。今天分享几个长期使用的…

作者头像 李华
网站建设 2026/5/10 9:05:52

Qwen3-Reranker-4B进阶教程:自定义指令实现特定任务优化

Qwen3-Reranker-4B进阶教程:自定义指令实现特定任务优化 1. 引言 随着信息检索和自然语言处理技术的不断发展,文本重排序(Text Re-ranking)在搜索、推荐系统和问答系统中扮演着越来越关键的角色。Qwen3-Reranker-4B 是通义千问系…

作者头像 李华
网站建设 2026/5/10 1:49:26

Elasticsearch教程:新手必看的入门基础指南

Elasticsearch 入门实战:从零搭建搜索系统,手把手带你玩转全文检索 为什么我们离不开 Elasticsearch? 你有没有遇到过这样的场景: 用户在网站里搜“苹果手机”,结果连卖水果的页面都排在前面? 系统日志…

作者头像 李华
网站建设 2026/5/9 6:28:57

无需云服务!Supertonic设备端TTS部署全解析(附镜像)

无需云服务!Supertonic设备端TTS部署全解析(附镜像) 1. 前言 Supertonic 是一款专注于**设备端文本转语音(TTS)**的高性能开源工具,其核心优势在于完全脱离云端依赖,所有语音合成过程均在本地…

作者头像 李华
网站建设 2026/5/10 3:29:20

通义千问2.5-7B-Instruct是否支持多模态?纯文本模型解析指南

通义千问2.5-7B-Instruct是否支持多模态?纯文本模型解析指南 1. 技术背景与核心问题 近年来,大语言模型(LLM)在自然语言理解、代码生成和推理任务中取得了显著进展。随着多模态模型的兴起,用户对“一个模型能否同时处…

作者头像 李华