NetLogo 的新手...想知道是否有一个过程可以以紧凑的方式对列表中的一项执行操作(类似于地图,但针对一项)。
例如,假设我想添加3
到索引处的项目i
在列表中blah
.
现在我正在这样做:
set blah replace-item i blah (item i blah + 3)
这看起来有点笨重,好像会有一个程序可以做到这一点,但我一直找不到一个。只是想确保我没有遗漏什么。
谢谢你!
泰勒
没有内置的东西可以做到这一点。但您可以自己将其定义为将任务作为输入的过程:
;; replace item i of xs with the result of applying fn to that item
to-report mapping-replace-item [i xs fn]
report replace-item i xs (runresult fn item i xs)
end
使用示例:
observer> show mapping-replace-item 2 [10 20 30 40] task [? * ?]
observer: [10 20 900 40]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)