当前位置:首页 >> 脚本专栏

Python列表推导式实现代码实例

列表推倒式 [结果 for 变量 in 可迭代对象 if 筛选]

字典推倒式 {结果 for 变量 in 可迭代对象 if 筛选} 结果 => key:value

集合推倒式 {结果 for 变量 in 可迭代对象 if 筛选} 结果 => key 自带去重功能

列表推导式的执行顺序:各语句之间是嵌套关系,左边第二个语句是最外层,依次往右进一层,左边第一条语句是最后一层

生成一个存放1-100中个位数为3的数据列表

普通写法

#生成一个存放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]

#利用列表推到是将 列表中的整数提取出来[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)
# 字典推导式:把字典中的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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。