python列表的快速操作


在C中修改容器中的每一个节点的内容我们的办法只有一个,就是遍历节点并对节点进行操作:

for (int i = 0; i < len; ++i) {
    con[i] *= 2;
}

我们C++11一些(m是标准容器):

for (auto i : m) {
   i *= 2;
}
或者

foreach(m.begin(), m.end(), [](x){x*=2}); 

很自然的在python中也会有人这样去写:

for i in m:
    i = i * 2
如果你是pythoner还在这样去写,那就有些太说不过去了,你完全可以一句话来完成的

b = [x *2 for x in a]
列表在python中支持这样快速的生成方式,甚至于去通过条件判断来生成
c = [x * 2 for x in a if a != 2]

恩,这样就有点python味道了。


你可能感兴趣的:(python列表的快速操作)