python中 map和列表推导式 哪个比较好

版权声明:转载请说明地址,谢谢! https://blog.csdn.net/larykaiy/article/details/82948178

由于python3的改版,map都是返回迭代器了,所以python3的map()每次都要用list(map())将其转化为列表
另外,如果使用列表推导式将会变得非常方便
例如:list(map(lambda x: x+1, range(42)))
如果使用[x+1 for x in range(42)]
是不是很方便呢,举例说明吧

s = "ab,h|b;a\ts,d\ts|d;ff"
res = s.split(';')
t = []
# m = map(lambda x: t.extend(x.split('|')), res)
# list(m)
[t.extend(x.split('|')) for x in res]
t2 = []
[t2.extend(x.split(',')) for x in t]
t3 = []
[t3.extend(x.split('\t')) for x in t2]
print(t3)

[‘ab’, ‘h’, ‘b’, ‘a’, ‘s’, ‘d’, ‘s’, ‘d’, ‘ff’]

猜你喜欢

转载自blog.csdn.net/larykaiy/article/details/82948178
今日推荐