news 2026/1/14 17:01:11

Python学习第一天:保留字和标识符

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python学习第一天:保留字和标识符

Python学习第一天:保留字和标识符的技术文章大纲

保留字的概念与作用

解释保留字的定义及其在Python中的重要性
列出Python中所有保留字(如if,else,for,def等)
说明保留字不可用作变量名或标识符的原因

标识符的定义与命名规则

标识符的概念及其在变量、函数、类命名中的应用
合法标识符的规则(以字母或下划线开头,仅包含字母、数字、下划线)
常见命名约定(如小写字母、下划线分隔的snake_case

保留字与标识符的区分

通过代码示例展示保留字与合法/非法标识符的对比
演示因使用保留字作为标识符导致的语法错误

实践建议与常见错误

推荐使用有意义的标识符命名(如user_name而非a
避免与保留字冲突的技巧(如添加下划线class_
调试因命名问题引发的错误的实用方法

总结与练习

强调保留字和标识符在代码可读性与功能性中的关键作用
提供简单的练习题(如判断给定名称是否为合法标识符)
推荐进一步学习的关键字和语法主题

在 Python 中,保留字(关键字)是被语言本身预定义、具有特殊含义和用途的标识符,不能被用作变量名、函数名、类名等自定义标识符。保留字的数量会随 Python 版本略有调整,以下是核心且通用的保留字说明:

一、Python 3.x 核心保留字(按用途分类)

1. 控制流(条件 / 循环)
保留字用途示例
if条件判断开始if a > 0:
elif条件分支(else if)elif a == 0:
else条件分支默认情况else:
for遍历循环for i in range(5):
while条件循环while a < 10:
break终止当前循环break
continue跳过当前循环剩余部分continue
matchPython 3.10+ 模式匹配(类似 switch)match num:
case模式匹配的分支case 1: print("one")
2. 函数 / 类 / 模块
保留字用途示例
def定义函数def add(a, b): return a+b
class定义类class Person:
import导入模块 / 对象import os
from从模块导入指定对象from os import path
as别名import numpy as np
return函数返回值return result
yield生成器函数返回值yield i
lambda匿名函数f = lambda x: x*2
with上下文管理器(自动释放资源)with open("file.txt") as f:
pass空语句(占位)if a: pass
3. 变量 / 作用域
保留字用途示例
varPython 3.10+ 类型标注(变量注解)var x: int = 10
global声明全局变量global count
nonlocal声明嵌套作用域变量nonlocal count
del删除对象引用del a
4. 逻辑 / 身份判断
保留字用途示例
and逻辑与if a > 0 and b > 0:
or逻辑或if a > 0 or b > 0:
not逻辑非if not a:
is判断对象身份(是否同一对象)if a is None:
is not否定对象身份if a is not None:
in判断成员关系if 5 in [1,2,3]:
not in否定成员关系if 5 not in [1,2,3]:
5. 异常处理
保留字用途示例
try捕获异常开始try:
except捕获指定异常except ValueError:
finally无论是否异常都执行finally: f.close()
raise主动抛出异常raise ValueError("错误")
assert断言(调试用)assert a > 0, "a必须大于0"
6. 其他核心保留字
保留字用途示例
True布尔真flag = True
False布尔假flag = False
None空值res = None
asyncPython 3.5+ 异步函数async def func():
awaitPython 3.5+ 等待异步结果await func()
with上下文管理(如文件操作)with open("file.txt") as f:

二、查看当前 Python 版本的保留字

可以通过keyword模块直接查看,代码如下:

import keyword # 打印所有保留字 print(keyword.kwlist) # 检查某个字符串是否是保留字 print(keyword.iskeyword("if")) # True print(keyword.iskeyword("hello")) # False

如图:

标识符:

我学习的课程中有一下三张总结

我将这三张图进行总结做出下面的表格,便于理解:

分类具体规则 / 规范示例注意事项
命名规则(必须遵守)1. 可包含:英文、中文、下划线_、数字;首字符不能是数字2. 不能用 Python 保留字3. 严格区分大小写4. 允许中文,但不建议用合法:name_age非法:123abcif违反会直接报语法错误
模块名短小、全小写,多单词用下划线分隔game_main-
包名短小、全小写,不推荐用下划线(建议用点分隔)推荐:com.ysjpython不推荐:com_ysjpython-
类名1. 类名:单词首字母大写(Pascal 风格)2. 模块内部类:_+Pascal 风格类名:MyClass内部类:_InnerMyClass-
函数 / 类属性 / 方法全小写,多单词用下划线分隔get_user_info()student_name-
常量全大写,多单词用下划线分隔MAX_NUM-
特殊下划线标识符1. 单下划线开头(_var):受保护,from xxx import *不导入2. 双下划线开头(__var):类私有3. 双下划线首尾(__var__):Python 专用标识_protected_var__private_var__init__()避免自定义__var__格式的名字

下一篇将会给大家讲解布尔类型和类型转换函数,希望大家支持

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/26 3:24:11

1、云、虚拟化与数据存储网络:从挑战到机遇的旅程

云、虚拟化与数据存储网络:从挑战到机遇的旅程 在当今数字化的时代,信息技术(IT)领域正经历着前所未有的变革。数据的爆炸式增长、新技术的不断涌现,都给企业的信息服务带来了新的挑战和机遇。本文将深入探讨云、虚拟化和数据存储网络相关的重要话题,帮助您更好地理解如…

作者头像 李华
网站建设 2025/12/20 9:43:24

8、数据足迹缩减:实现经济高效的数据需求增长

数据足迹缩减:实现经济高效的数据需求增长 在当今数字化时代,数据量呈爆炸式增长,企业和组织面临着数据存储、管理和保护的巨大挑战。数据足迹缩减(Data Footprint Reduction,DFR)作为应对这一挑战的关键策略,正日益受到关注。本文将深入探讨数据足迹缩减的相关内容,包…

作者头像 李华
网站建设 2025/12/26 16:41:36

10、数据存储服务与系统全解析

数据存储服务与系统全解析 1. 数据存储概述 数据存储技术用于在内部或外部、本地或远程(包括云与托管服务提供商)基础上存储和访问数据、应用程序和虚拟机。存储的位置多样,如SAN、NAS、云系统、服务器、工作站、笔记本电脑和其他便携式设备等。不同类型的存储具有不同的特…

作者头像 李华
网站建设 2026/1/14 8:59:23

14、云、虚拟和数据存储网络的管理工具解析

云、虚拟和数据存储网络的管理工具解析 1. 引言 在当今的 IT 领域,云、虚拟和数据存储网络的管理至关重要。正如 Greg Schulz 所说:“如果你只有一把锤子,那么所有东西看起来都像钉子。”这强调了工具选择和使用的重要性。本文将深入探讨云、虚拟和数据存储网络的管理工具…

作者头像 李华
网站建设 2026/1/13 15:01:27

16、数据存储网络的效率与效能提升之路

数据存储网络的效率与效能提升之路 1. 回顾与思考 在探讨数据存储网络相关话题时,我们不应局限于是否需要云、虚拟化、融合或数据存储网络环境这些问题。对于非供应商、顾问、分析师、记者或负责组织 IT 相关解决方案的人来说,购买和部署新解决方案通常是为了解决业务问题。…

作者头像 李华
网站建设 2025/12/26 20:50:24

互联网大厂Java后端面试中常见面试题及其答案

java中的四种引用有哪些 java中的四种引用有&#xff1a;强引用、软引用、弱引用和虚引用。不同的引用类型&#xff0c;主要体现的是对象不同的可达性&#xff08;reachable&#xff09;状态和对垃圾收集的影响。 强引用&#xff08;"Strong" Reference&#xff09…

作者头像 李华