1、列表生成式
# range()函数,参数1 开始数 参数2 结束数-1 参数3 步进(隔几个)L = range(11) # 生成0-10的一个整数序列L = range(1, 11) # 生成1-10的一个整数序列L = list(range(1, 11)) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]# 循环生成list,for循环可嵌套for循环、if判断L = [i * i for i in range(1, 11)] # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]L = [i + j for i in 'ABC' for j in 'XYZ'] # ['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']L = [i * i for i in range(1, 11) if i % 2 == 0]# [4, 16, 36, 64, 100]
2、generator生成器
# 将列表生成式的[]改为()g = (i * i for i in range(10))# 使用next()返回generator下一个值(超出长度会抛出StopIteration)next(g)可使用for循环进行迭代for i in g: print(i)