列表推导更多的作用是让python变得更加优雅
假如,现在一个函数的作用是把传入列表的每个值乘2,并且返回
def list_test(a_list): b = [] for i in a_list: i = i*2 b.append(i) return b >>>print list_test(a_list = [1,2,3,4]) [2, 4, 6, 8]
如果使用列表推导的话会让代码更加优雅
def list_test(a_list): b = [i*2 for i in a_list] return b >>>print list_test(a_list = [1,2,3,4]) [2, 4, 6, 8]
只用了一行代码,就实现了原来的功能,而且很容易理解
当然,如果对于传入列表的操作很复杂,建议还是老老实实的for然后进行操作,不然臃肿的列表推导会导致理解成本增加,而且代码很丑



