如何对列表中的每个元素执行函数?例如,说我有一个清单:
(1 x q)
我要在my-function
,1
,x
上使用q
。这有预定义的功能吗?与“更高”级语言中的foreach
类似?或者我是否必须使用car
和cdr
手动执行此操作?
任何帮助将不胜感激!
答案 0 :(得分:4)
答案 1 :(得分:1)
当然有。
查看hyperspec symbol index并阅读以下内容:
map
,map-into
mapcar
,mapcan
,mapcon
,mapc
,mapl
,maplist
dolist
loop
:(loop :for element :in list #|...|#)
如果您需要将结果作为另一个相同长度的列表:map
,map-into
,mapcar
,loop
。
如果您想通过副作用进行此操作:dolist
,loop
。