我以这样的方式使用列表理解:对于每个元素,我有2个结果值:
my_list = [10,20,30]
res_list = [ (x*2, x*3) for x in my_list ]
res_list # [(20, 30), (40, 60), (60, 90)]
但我需要一个扁平的列表,所以我必须进行另一种理解:
res_list_1 = [yy for xx in res_list for yy in xx]
res_list_1 # [20, 30, 40, 60, 60, 90]
有没有办法避免这种情况,并在第一次理解时直接res_list
?
答案 0 :(得分:3)
将tuple
放在最后:
res_list_1 = [item for object in my_list for item in (object*2, object*3)]