首页 > 其他 > 详细

list, set, dict, generator comprehension

时间:2020-05-17 00:28:05      阅读:53      评论:0      收藏:0      [点我收藏+]

 

list comprehension:

my_list = [num*num for num in range(1,11)]
print(my_list)

 

if使用

my_list = [num for num in range(1,11) if num > 5]
print(my_list)

if在for循环后面

 

if else使用

my_list = [num if num < 5 else larger for num in range(1,11) ]
print(my_list)

if在for循环前面

 

 

 

set comprehension与list comprehension类似,区别在于list使用的是[],而set得用()

例如:

my_list = [1,1,1,2,2,3,3,3,3,4,4,7,7,7,9,9,9,9]
my_set = {num for num in my_list}
print(my_set)

结果为:

{1, 2, 3, 4, 7, 9}

 

 

 

 

dict comprehension:

简单易懂的方法:

names = [peter, clark, wade, bruce, logan]
heros = [spideman, superman, deadpool, batman, wolverine]
my_dict = {}
for name, hero in zip(names, heros):
    my_dict[name] = hero
print(my_dict)

 

dict comp:

names = [peter, clark, wade, bruce, logan]
heros = [spideman, superman, deadpool, batman, wolverine]
my_dict = {name: hero for name, hero in zip(names, heros)}
print(my_dict)

 

结果都是:

{peter: spideman, clark: superman, wade: deadpool, bruce: batman, logan: wolverine}

 

 

 

 

generator comprehension:

注意:

上面的list用的是[];

dict用的是{}

set用的也是{},区别是没有:

而generator用的是()

my_gen = (num for num in range(1,11))
for item in my_gen:
    print(item)

 

list, set, dict, generator comprehension

原文:https://www.cnblogs.com/profesor/p/12902903.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!