什么是语法糖?
语法糖指简化语法,代码的基本逻辑没改变。
语法糖代码示例
squares_dict = {} for x in range(10): squares_dict[x] = x**2
- 列表推导
简单的方式生成列表
语法糖:
squares_dict = {x: x**2 for x in range(10)}
输出:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
传统写法:
squares = [] for x in range(10): squares.append(x**2)
-
字典推导
语法糖:
squares_dict = {x: x**2 for x in range(10)}
传统写法:
squares_dict = {} for x in range(10): squares_dict[x] = x**2
-
集合推导
语法糖
squares_set = {x**2 for x in range(10)}
传统写法
squares_set = set() for x in range(10): squares_set.add(x**2)
-
条件表达式
语法糖
result = "Even" if x % 2 == 0 else "Odd"
传统写法
if x % 2 == 0:
result = "Even"
else:
result = "Odd"
- 上下管理器
通过with使用上下文管理器,可简化一些资源操作,如文件中的自动关闭
语法糖:
with open('file.txt', 'r') as file:
content = file.read()
输出:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
传统写法:
file = open('file.txt', 'r') try: content = file.read() finally: file.close()
- 函数注解
通过函数注解,可以为函数的参数和返回值添加类型提示
语法糖:
def add(a: int, b: int) -> int:
return a + b
无传统写法,注解是 Python 3 引入的语法糖。
标签:10,Python,语法,range,dict,file,squares From: https://www.cnblogs.com/Makerr/p/18460236