推导式Comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。共有三种推导:
序列推导式字典(dict)推导式集合(set)推导式 一、序列推导式
1、使用[]生成list序列:列表 元祖tuple 字符串
[表达式 for 变量 in 列表] 或者 [表达式 for 变量 in 列表 if 条件]
例1:
# 生成一个1 2 3 4 .....平方的新列表
res=[]
for i in range(1,11)
res.append(i**2)
# 使用推导式实现
res = [x**2 for x in range(1,11)]
例2:
res=[]
for i in range(2,15)
if i**2 % 2 == 0:
continue
res.append(i**2)
# 使用推导式实现
res = [x ** 2 for x in range(2,15) if x**2 % 2==0]
例3:
res = [x + y for x in 'python' for y in '123' if x+y !=['y1']]2、元祖推导式
“( )”在Python中定义为生成器,使用()生成generator
例1:
res = (x ** 2 for x in range(3,12)) print(res)
例2:
res = tuple(x ** 2 for x in range(5,13)) print(res)二、字典推导式
字典推导式和列表推导式的使用方法类似,将中括号改为大括号:
例1:
dic = {x:x**2 for x in range(3,20)}
print(dic)
三、集合推导式
ss = {x for x in 'abc234'}
print(ss)



