Skip to content

Python 关键字

Python 关键字是保留字。Python 解释器使用关键字来理解程序。关键字定义了程序的结构。我们不能使用关键字来命名程序实体,例如变量、类和函数。

Python中有多少个关键字?

Python有很多关键字。随着Python新功能的不断涌现,关键字的数量还在持续增长。

截至撰写本教程时,Python 3.13.12 是当前稳定版本。Python 3.13.12 版本共有 35 个关键字。

我们可以使用 Python 解释器的帮助工具获取完整的关键字列表。

shell
C:\Users\43898>python
Python 3.13.12 (tags/v3.13.12:1cbe481, Feb  3 2026, 18:22:25) [MSC v.1944 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> help()
help> keywords

Here is a list of the Python keywords.  Enter any keyword to get more help.

False               class               from                or
None                continue            global              pass
True                def                 if                  raise
and                 del                 import              return
as                  elif                in                  try
assert              else                is                  while
async               except              lambda              with
await               finally             nonlocal            yield
break               for                 not

help>

Python 关键字列表

我们可以使用“keyword”模块来获取关键词列表。

shell
PS C:\Users\43898> python
Python 3.13.12 (tags/v3.13.12:1cbe481, Feb  3 2026, 18:22:25) [MSC v.1944 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> len(keyword.kwlist)
35
>>>

Python 软关键词

Python 3.9 引入了软关键字的概念。我们可以将软关键字用作变量名,它们仅在程序上下文中才会受到特殊处理。目前,有两个软关键字: mergecase。我们可以使用 keyword 模块来确认这一点。

shell
>>> keyword.softkwlist
['_', 'case', 'match', 'type']
>>>

为什么我们需要软性关键词?

我认为引入软关键字是为了避免现有代码因被用作标识符而遭到破坏。这将给开发人员足够的时间对代码进行相应的修改。

如何检查一个字符串是否为关键字?

我们可以使用keyword.iskeyword()函数来检查字符串是否为保留关键字。

例如,print 在 Python 中是关键字吗?

shell
>>> keyword.iskeyword('print')
False
>>>

所以,print 不是 Python 中的关键字。

Python 关键字简介(35 个)

下表汇总了 Python 3.13 的 35 个关键字,包含用途说明和最小可运行示例。

序号关键词描述举例
1False布尔假值常量。ok = False
2None空值对象,表示“无”。result = None
3True布尔真值常量。done = True
4and逻辑与,两个条件都为真才为真。if a > 0 and b > 0:
5as起别名或异常绑定变量。import math as m
6assert断言条件为真,否则抛错。assert x > 0
7async定义异步协程函数。async def fetch():
8await等待协程结果。data = await fetch()
9break立即跳出当前循环。if x == 3: break
10class定义类。class User:
11continue跳过本轮循环后续语句。if x % 2 == 0: continue
12def定义函数。def add(a, b):
13del删除变量名或容器元素。del nums[0]
14elif条件分支中的“否则如果”。elif score >= 60:
15else条件或循环中的“否则”分支。else: print("no")
16except捕获异常分支。except ValueError:
17finally异常处理中始终执行的块。finally: f.close()
18for遍历可迭代对象。for n in nums:
19from从模块中导入指定对象。from math import pi
20global在函数内声明使用全局变量。global count
21if条件判断起始关键字。if age >= 18:
22import导入模块。import os
23in成员测试或 for 遍历语法的一部分。if "a" in text:
24is判断是否为同一对象(身份比较)。if x is None:
25lambda定义匿名函数。f = lambda x: x * 2
26nonlocal在嵌套函数中绑定外层局部变量。nonlocal total
27not逻辑非,取反布尔值。if not items:
28or逻辑或,任一条件为真即为真。if a == 1 or b == 1:
29pass空语句,占位用,不执行任何操作。def todo(): pass
30raise主动抛出异常。raise ValueError("bad")
31return从函数返回值并结束函数。return a + b
32try包裹可能抛异常的代码块。try: x = int(s)
33while条件循环,条件为真则重复执行。while n > 0:
34with上下文管理,自动清理资源。with open("a.txt") as f:
35yield让函数变为生成器并逐步产出值。yield i

总结

Python关键字具有特定的功能。Python解释器使用关键字来理解代码并执行它们。Python目前有35个关键字,随着新功能的不断增加,关键字的数量还会继续增长。

下一步是什么

你对Python中的关键字有了初步了解。现在,你应该学习以下教程,掌握Python编程的基础知识。