Python-列表推导式、生成器、字典推导式

列表推导式

  [] + for + if

  算子、循环、条件, 对相同的数据进行处理, 算子也可以是函数

number = [i for i in range(1, 101) if i % 2 == 0]
print(number)
def add_one(value):
    return str(int(value) + 1)

number_str = "123456789"
print(''.join([add_one(i) for i in number_str]))

生成器表达式

  把列表推导式 [] 改为 (),生成器也可迭代

number = (i for i in range(1, 101) if i % 2 != 0)
print(number.__next__())
for i in number:
    print(i, end=' ')

字典推导式

   {} + for + items()

score = {"BeiMenChuiXue": 100, "QiNiuYun": 96, "AliYun": 88, "TengXun": 66}
out_90 = {key: value for key, value in score.items() if value >= 90}
print(out_90)

集合推导式

  {} + for + if

score = {i for i in  range(1, 101) if i % 3 == 0}
print(score)

应用简单逻辑处理,当过于复制则不推荐,会降低代码可阅读性

猜你喜欢

转载自www.cnblogs.com/2bjiujiu/p/9084923.html