【Skill】对一个或多个List里面的所有元素做同样操作

a = list(1 2 3 4)

我们想将a里面的所有int转换成string,只需要利用mapcar跟lambda即可:

b = mapcar(lambda((x) sprintf(s "%d" x)) a)

==> list("1" "2" "3")

 

a = list(1 2 3 4)

b = list(5 6 7 8)

我们想将a b中所有的偶数挑出来,需要用到lambda跟mapcan的组合

c = mapcan(lambda((x y) if(evenp(x)&&evenp(y) list(x y))) a b)

==> list(2 6 4 8)

 

posted @ 2024-06-26 15:49  Vincent_Wood  阅读(27)  评论(0编辑  收藏  举报