python推导式

列表推导式

  • 列表推导式可以基于现有的列表做一些操作,从而快速创建新列表,python列表推导式写法简单,主要用于简化代码

 

看一下使用列表推导式与不使用列表推导式的差别

li = []
for i in range(0,5):
    li.append(i)

li1 = [ i for i in range(0,5)]
print(li) #[0, 1, 2, 3, 4]
print(li1) #[0, 1, 2, 3, 4]

怎么样,一行代码就能搞定,是不是代码量减少了

 

  • 带if条件的列表推导式
li = []
for i in range(0,5):
    if i % 2 == 0:
        li.append(i)

li1 = [ i for i in range(0,5) if i % 2 == 0]
print(li) # [0, 2, 4]
print(li1) # [0, 2, 4]

 

字典推导式

  • 基于列表推导式的学习,字典推导式使用方法与列表推导式相似,只不过返回的是字典
li = ['电脑','手机','平板']
dic = {key: value for value,key in enumerate(li)}
print(dic) # {'电脑': 0, '手机': 1, '平板': 2}
  • 将两个列表合并为一个字典
li = [1,2,3]
li1 = [4,5,6]
di = { li[i] : li1[i] for i in range(len(li))}
print(di) # {1: 4, 2: 5, 3: 6}
  • 带if条件的字典推导式
dic = {'张三':17,"李四":18,"王五":19}
dic1 = { key:value for key,value in dic.items() if value >= 18}
print(dic1) # {'李四': 18, '王五': 19}

 

posted @ 2021-08-09 19:03  一点也不酷0  阅读(38)  评论(0)    收藏  举报