gpt4 book ai didi

netlogo - 如何从 Netlogo 中的未排序列表中删除多个项目

转载 作者:行者123 更新时间:2023-12-02 03:38:34 25 4
gpt4 key购买 nike

所以我对 Netlogo 中的列表有点挣扎,所以基本上我有两个列表,我想从列表 2 中删除列表 1 中的项目,例如:

列表 1:[8 6 9 7 1 3]

列表 2:[5 9 8]

结果列表:[6 7 1 3]

我尝试了以下代码,但它返回一个空列表:

if List 2 != []
[
foreach List 2
[
let p position ? List 1
if p = true
[
set List 1 remove-item p List 1
]
]
]

有什么想法吗?

最佳答案

member? 的组合和 filter将带您到达那里:

let list1 [8 6 9 7 1 3]
let list2 [5 9 8]
let result filter [ x -> not member? x list2 ] list1
print result

将打印所需的内容:

[6 7 1 3]

提示:每当您发现自己尝试对 NetLogo 中的任何内容使用索引时,您可能没有以最佳方式做事。 NetLogo 有大量对整个列表进行操作的函数(如本例中的 filter)。很少需要显式地循环它们。

关于netlogo - 如何从 Netlogo 中的未排序列表中删除多个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49379498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com