Python 关键字说明
Python 关键字是 Python 语言中具有特殊含义的保留字,不能用作变量名、函数名等标识符。以下是 Python 的关键字列表:
>>> 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']
关键字分类说明:
-
布尔值相关:
True:表示真False:表示假None:表示空值
-
逻辑运算相关:
and:逻辑与or:逻辑或not:逻辑非
-
条件控制相关:
if:如果elif:否则如果else:否则
-
循环控制相关:
for:for循环while:while循环break:跳出循环continue:继续下一次循环
-
函数定义相关:
def:定义函数return:返回函数值yield:生成器函数返回值lambda:定义匿名函数
-
类定义相关:
class:定义类
-
异常处理相关:
try:尝试执行except:捕获异常finally:最终执行raise:抛出异常assert:断言
-
模块导入相关:
import:导入模块from:从模块导入as:给导入的模块或对象起别名
-
变量作用域相关:
global:声明全局变量nonlocal:声明非局部变量
-
其他操作符:
in:判断是否在序列中is:判断是否是同一个对象del:删除对象pass:空操作,占位符
-
异步编程相关:
async:定义异步函数await:等待异步操作完成
-
上下文管理相关:
with:上下文管理器
1.3.1 条件控制语句
1. if-elif-else 条件判断
条件控制语句用于根据不同的条件执行不同的代码块。
# 基本语法结构(如果条件1成立执行代码块1,否则如果条件2成立执行代码块2,否则执行代码块3)
# 根据缩进区分代码块,不需要像shell一样,有if要有对应的fi
if condition1:
block1
elif condition2:
block2
else:
block3
# 示例:成绩等级判断
# coding=utf-8
# author: sre
def get_grade(score):
if score >= 90:
return 'A'
elif score >= 80:
return 'B'
elif score >= 70:
return 'C'
elif score >= 60:
return 'D'
else:
return 'F'
def main():
score = int(input("Enter your score: "))
grade = get_grade(score)
print(f"Your grade is: {grade}")
if __name__ == "__main__":
main()
2. 条件表达式(三元运算符)
# 语法:value_if_true if condition else value_if_false(如果条件成立返回前面的值,否则返回后面的值)
# 示例:判断奇偶
# coding=utf-8
# author: sre
resoult = "odd" if int(input("Enter a number: ")) % 2 else "even"
print(f"The number is {resoult}.")
3. match-case 模式匹配(Python 3.10+)
# 语法结构(根据值的不同匹配不同的模式,执行对应的代码块)
match value:
case pattern1:
block1
case pattern2:
block2
case _: # 默认情况
default_block
# 示例:季节活动
def get_season_activity(season):
match season:
case "spring":
return "适合踏青赏花"
case "summer":
return "适合游泳避暑"
case "autumn":
return "适合登山赏叶"
case "winter":
return "适合滑雪泡温泉"
case _:
return "未知季节"
1.3.2 循环语句
1. while 循环
# 基本语法(当条件为真时,重复执行代码块)
while condition:
block
# coding=utf-8
# author: sre
# 累加运算器
def factorial(n):
result = 0
current = 0
while current <= n:
result = current + result
current = current + 1
return result
def main():
n = int(input("请输入一个整数: "))
result = factorial(n)
print(f"从 0 到 {n} 的累加和是: {result}")
if __name__ == "__main__":
main()
2. for 循环
# 基本语法(遍历可迭代对象中的每个元素,执行代码块)
for item in iterable:
block
# coding=utf-8
# author: sre
def print_even_numbers(numbers):
"""
打印列表中的偶数数字
:param numbers: 数字列表
"""
for num in numbers:
if num % 2 == 0: # 判断是否是偶数
print(f"{num} is an even number!")
def main():
numbers = [1, 2, 3, 4, 5, 6]
print_even_numbers(numbers)
if __name__ == "__main__":
main()
3. 循环控制语句
break:跳出当前循环continue:跳过当前循环的剩余部分,继续下一次循环else:当循环正常完成时执行(不是通过break退出)
# 示例:查找第一个偶数
def find_first_even(numbers):
for num in numbers:
if num % 2 == 0:
print(f"Found first even number: {num}")
break
else:
print("No even number found")
1.3.3 异常处理
1. try-except 异常捕获
try-except 的存在意义在于处理程序运行时可能出现的异常,以确保程序不会因为一个错误而崩溃,保持程序的健壮性和容错能力。
# 基本语法(尝试执行可能出错的代码,如果发生异常则执行异常处理代码)
try:
block
except ExceptionType:
handle_exception
# 示例:安全转换整数
def safe_int_convert(s):
try:
result = int(s)
return result
except ValueError:
print(f"Cannot convert '{s}' to integer")
return None
except Exception as e:
print(f"Unknown error: {str(e)}")
return None
def main():
user_input = input("请输入一个整数: ")
converted_value = safe_int_convert(user_input)
if converted_value is not None:
print(f"转换后的整数是: {converted_value}")
else:
print("转换失败")
if __name__ == "__main__":
main()
2. try-except-else-finally 完整异常处理
# 示例:文件操作(try尝试执行,except捕获异常,else执行成功时运行,finally无论是否异常都会执行)
def read_file(filename):
file = None
try:
file = open(filename, 'r', encoding='utf-8')
content = file.read()
except FileNotFoundError as e:
print(f"File not found: {str(e)}")
return None
except IOError as e:
print(f"File read error: {str(e)}")
return None
else:
print("File read successfully")
return content
finally:
if file:
file.close()
print("File closed")
1.3.4 上下文管理(with语句)
# 基本语法(自动管理资源的获取和释放,确保资源正确关闭)
with context_manager:
block
# 示例:文件写入
def write_file(filename, content):
with open(filename, 'w', encoding='utf-8') as f:
f.write(content)
print("File written successfully")
1.3.5 控制流最佳实践
-
条件语句使用建议:
- 使用清晰的条件表达式
- 避免过多的嵌套
- 优先使用
elif而不是多个if - 合理使用
match-case处理多分支
-
循环语句使用建议:
- 使用
for循环处理已知的集合 - 使用
while循环处理不确定次数的循环 - 避免死循环
- 合理使用
break和continue
- 使用
-
异常处理建议:
- 只捕获预期的异常
- 使用具体的异常类型
- 保持异常处理代码简洁
- 确保资源正确释放
-
上下文管理建议:
- 优先使用
with语句 - 实现自定义上下文管理器
- 确保资源正确释放
- 优先使用
-
通用编程建议:
- 保持代码简洁清晰
- 添加必要的注释说明
- 使用有意义的变量名
- 遵循 Python 编码规范
- 编写单元测试
评论区