以下是 Python 中的关键字(基于 Python 3.11 版本,共 **36 个**),按功能分类解释它们的核心用途和常见场景。每个关键字都会用通俗易懂的语言和代码示例说明。

一、控制程序流程的关键字

1. **`if` / `elif` / `else`**

- **用途**:条件判断。

- **示例**:

```python

age = 18

if age < 18:

print("未成年")

elif age == 18:

print("刚好成年")

else:

print("已成年")

```

2. **`for` / `in`**

- **用途**:遍历序列(列表、字符串等)。

- **示例**:

```python

for i in [1, 2, 3]:

print(i) # 输出 1, 2, 3

```

3. **`while`**

- **用途**:循环执行代码,直到条件不满足。

- **示例**:

```python

count = 0

while count < 3:

print(count) # 输出 0, 1, 2

count += 1

```

4. **`break`**

- **用途**:跳出当前循环。

- **示例**:

```python

for i in range(5):

if i == 3:

break # 循环在i=3时终止

print(i) # 输出 0, 1, 2

```

5. **`continue`**

- **用途**:跳过当前循环的剩余代码,进入下一次循环。

- **示例**:

```python

for i in range(5):

if i == 2:

continue # 跳过i=2时的循环

print(i) # 输出 0, 1, 3, 4

```

二、定义函数和类的关键字

6. **`def`**

- **用途**:定义函数。

- **示例**:

```python

def greet(name):

print(f"你好,{name}!")

```

7. **`class`**

- **用途**:定义类(面向对象编程)。

- **示例**:

```python

class Dog:

def bark(self):

print("汪汪!")

```

8. **`return`**

- **用途**:从函数中返回结果。

- **示例**:

```python

def add(a, b):

return a + b

```

9. **`yield`**

- **用途**:定义生成器函数,逐步产生值。

- **示例**:

```python

def count_up_to(n):

i = 1

while i <= n:

yield i

i += 1

```

10. **`lambda`**

- **用途**:定义匿名函数(简单的一行函数)。

- **示例**:

```python

add = lambda a, b: a + b

print(add(3, 5)) # 输出 8

```

三、处理异常的关键字

11. **`try` / `except` / `finally`**

- **用途**:捕获和处理异常。

- **示例**:

```python

try:

print(10 / 0)

except ZeroDivisionError:

print("不能除以零!")

finally:

print("无论如何都会执行")

```

12. **`raise`**

- **用途**:手动触发异常。

- **示例**:

```python

if age < 0:

raise ValueError("年龄不能为负数!")

```

四、逻辑运算关键字

13. **`and` / `or` / `not`**

- **用途**:逻辑运算(与、或、非)。

- **示例**:

```python

if age >= 18 and age <= 60:

print("成年人")

```

14. **`is`**

- **用途**:判断两个对象是否是同一个(内存地址相同)。

- **示例**:

```python

a = [1, 2]

b = a

print(a is b) # 输出 True

```

15. **`in`**

- **用途**:判断元素是否在序列中。

- **示例**:

```python

print(3 in [1, 2, 3]) # 输出 True

```

五、变量作用域相关

16. **`global`**

- **用途**:在函数内声明使用全局变量。

- **示例**:

```python

x = 10

def set_x():

global x

x = 20

set_x()

print(x) # 输出 20

```

17. **`nonlocal`**

- **用途**:在嵌套函数中声明使用外层(非全局)变量。

- **示例**:

```python

def outer():

x = 10

def inner():

nonlocal x

x = 20

inner()

print(x) # 输出 20

```

六、其他重要关键字

18. **`import` / `from`**

- **用途**:导入模块或模块中的内容。

- **示例**:

```python

import math

from math import sqrt

```

19. **`as`**

- **用途**:给模块或变量起别名。

- **示例**:

```python

import numpy as np

```

20. **`pass`**

- **用途**:空语句,占位符(表示“什么都不做”)。

- **示例**:

```python

def empty_function():

pass # 暂时留空

```

21. **`assert`**

- **用途**:断言条件为真,否则触发异常(用于调试)。

- **示例**:

```python

assert 1 + 1 == 2, "数学错了!"

```

22. **`async` / `await`**

- **用途**:定义异步函数和等待异步操作(协程)。

- **示例**:

```python

async def fetch_data():

await some_async_task()

```

七、完整关键字列表

以下是 Python 3.11 的所有关键字(共 36 个):

```python

False await else import pass

None break except in raise

True class finally is return

and continue for lambda try

as def from nonlocal while

assert del global not with

async elif if or yield

```

八、关键注意事项

1. **关键字不能作为变量名**:

```python

# 错误示例!

class = 10 # 语法错误,class是关键字

```

2. **`is` 和 `==` 的区别**:

- `is` 比较内存地址,`==` 比较值是否相等。

- 示例:

```python

a = [1, 2]

b = [1, 2]

print(a == b) # True(值相等)

print(a is b) # False(不同对象)

```

3. **`global` 和 `nonlocal` 的区别**:

- `global` 用于全局变量,`nonlocal` 用于外层嵌套函数的变量。

**总结**

理解这些关键字是掌握 Python 语法的基础。建议在实际编码中多练习,逐步熟悉它们的用法! 🚀