列表推倒式 [结果 for 变量 in 可迭代对象 if 筛选]
字典推倒式 {结果 for 变量 in 可迭代对象 if 筛选} 结果 => key:value
集合推倒式 {结果 for 变量 in 可迭代对象 if 筛选} 结果 => key 自带去重功能
列表推导式的执行顺序:各语句之间是嵌套关系,左边第二个语句是最外层,依次往右进一层,左边第一条语句是最后一层
生成一个存放1-100中个位数为3的数据列表
普通写法
1
2
3
4
5
6
7
8
9
10
|
#生成一个存放1-100中个位数为3的数据列表
# 普通写法
list = []
for i in range ( 1 , 101 ):
if i % 10 = = 3 :
list .append(i)
print ( list )
#列表推导
list1 = [i for i in range ( 1 , 101 ) if i % 10 = = 3 ]
print (list1)
|
利用列表推到是将 列表中的整数提取出来[True, 33, ll", "kk", 44, 34, 0]
1
2
3
4
5
|
#利用列表推到是将 列表中的整数提取出来[True, 17, "hello", "bye", 98, 34, 21]
values = [ True , 33 , "ll" , "kk" , 44 , 34 , 0 ]
#type()校验数据类型
nums = [i for i in values if type (i) = = int ]
print (nums)
|
1
2
3
4
5
6
7
8
9
|
# 字典推导式:把字典中的key:value互换, {"b":"a","d":"c"}
dic = { "a" : "b" , "c" : "d" }
new_dic = {dic[key]:key for key in dic} # key值是里面的 key = a,key = c
print (new_dic) # key = a,key = c dic[key] = b, d
lst1 = [ "唐人街探案" , "Q" , "5颗星" , "悬疑" ]
lst2 = [ "电影" , "第一" , "评分" , "类型" ]
dic = {lst2[i]:lst1[i] for i in range ( len (lst1))}
print (dic)
|
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/cheng10/p/13361184.html