您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python-14 推导式

5b51 2022/1/14 8:22:21 python 字数 3072 阅读 522 来源 www.jb51.cc/python

列表字典集合有推导式列表推导式用一个表达式创建or控制一个有规律的列表list1=[]i=0whilei<10:list1.append(i)i+=1print(list1)#[0,1,2,3,4,5,6,7,8,9]list1=[]foriinrange(10):list1.append(i)i+=1print(li

概述

列表 字典 集合有推导式

列表推导式
一个表达式创建or控制一个有规律的列表

list1 = []
i = 0
while i < 10:
    list1.append(i)
    i += 1

print(list1)
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

list1 = []
for i in range(10):
    list1.append(i)
    i += 1

print(list1)
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

#列表推导式
list1 = [i for i in range(10)]
print(list1) #[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]






用if控制

list1 = [i for i in range(0,10,2)]
print(list1) #[0, 2, 4, 6, 8]

list1 = [i for i in range(10) if i%2 == 0]
print(list1) #[0, 2, 4, 6, 8]

多个for实现列表推导式
需求:创建一个这个
[[(1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]

list1 = [(i,j) for i in range(1,3) for j in range(3)]
print(list1) 

字典推导式
快速合并利润表为字典或提取字典中的目标数据

创建一个字典:字典key是1-5,value是key的平方

dict = {
  i: i**2 for i in range(1,5)}
print(dict)
#{1: 1, 2: 4, 3: 9, 4: 16}

将两个列表合并为一个字典
若两个列表len不一样,len统计多的那个会报错

list1 = ['name','age','gender']
list2 = ['Tom','20','man']

dict = {
  list1[i]:list2[i] for i in range(len(list1))}
print(dict)
#{'name': 'Tom', 'age': '20', 'gender': 'man'}

提取字典目标数据
提取傻瓜书电脑数量大于等于200的字典数据

counts = {
  'MBP':268,'HP':125,'DELL':201,'LENOVO':199}
count1 = {
  key:value for key,value in counts.items() if value >= 200}
print(count1)
#{'MBP': 268, 'DELL': 201}

集合推导式
去重

list1 = [1,1,2]
set = {
  i**2 for i in list1}
print(set)
#{1, 4}

总结

以上是编程之家为你收集整理的python-14 推导式全部内容,希望文章能够帮你解决python-14 推导式所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶