# 列表生成式(语法糖) # 需求:1.得到一个列表,[1,2,3,4,5,6....20] # 需求,给定列表[1,2,3],分别计算每项元素的平方并返回,返回结果[1,4,9] #第一题普通写法 list1 = [] for i in range(1,21): list1.append(i) print(list1) # 语法 [变量 循环表达式] print([i for i in range(1,21)]) # 列表生成式的语法 i 变量 接受循环值 # 解释器会自动把每一次循环的变量作为一项插入到列表当中。 # 场景:适合比较简单的列表生成,不必刻意使用。 # 复杂一点的例子,循环表达时候面又跟了if表达式,只有当if条件为True, i 才会加入列表 [i for i in range(1,21) if i % 2 ==0] #[2,4,6,8,10,12,14,16,18,20] # 更为复杂的例子 [i * i for i in range(1,11)] #(了解)生成器 g = (x for x in range(1,5)) g.__next__() #1 g.__next__() #2