python 链表推导式x for xx in yy

一.(x for xx in yy )当x为固定参数

如:

    n = 10
    # 生成n个0
    matrix = [0 for i in range(n)]# 这里面0代表返回值,后面的for循环就是返回的个数,这里就是返回10个0给matrix
    print(matrix)
等价于:
  1. matrix = []
  2. for i in range(n):
  3. matrix.append(0)
  4. print(matrix)

二.(x for xx in yy) 当x里面含有可变的参数

如:

s="abcdefg"
mm=[s[i:i+2] for i in range(len(s)-1)] #x包含可变i参数,这样就可以在s里面以长度为2,每次向后移动一位,并存入mm中
print(mm)
输出:
['ab', 'bc', 'cd', 'de', 'ef', 'fg']

 

posted @ 2020-08-13 15:58  Curry!  阅读(611)  评论(0编辑  收藏  举报