从列表中挑选元素
Picking elements from a list
我正在努力提高我对 NetLogo 中列表的理解。
很快,我将在列表中添加和挑选(和删除)项目。每只海龟都有自己的列表。
每个列表应包含按时间顺序排列的项目,从最近到最旧。一旦海龟选择了一个项目,邻居们就会将这个项目放在他们列表的顶部(对于选择该项目的海龟也是如此)。我试图做的是:
rnd:weighted-one-of-list mylist [ [ii] -> ii ] ; pick one of the most recent items already in the list
set mylist lput old_item mylist print "Old item" ; add items to the list
使用 JenB 在之前 post 中建议的扩展。
使用从列表中选择一个项目(旧项目)的条件是 mylist 不为空(if empty? mylist
)。
我的问题是像我那样使用扩展名选择项目是否正确。
更新:列表按以下方式组成:
我决定创建一个新项目,item 4
和 quality 2
(质量是 [0,5]
中的一个参数)。
我将此项目添加到我的列表 (item 4, item3, item2, item1)
- 从最近到最旧 - 质量分别为 item4 2, item3 1, item2 2, item1 5
,并在邻居的列表中:例如 neighbour1
,将列表 (item4, item 11, item 10,..)
和 quality 2, 3, 1
分别。
我期望的是根据质量参数从列表中选择一个项目。这意味着我将从我的列表中选择 item1
。我的邻居会选择 item11
,因为它的质量等于 3,即同类中最高的。
感谢您的帮助。
我正在阅读https://ccl.northwestern.edu/netlogo/docs/rnd.html
rnd:weighted-one-of-list mylist [ [ii] -> ii ]
is it correct to pick an item using the extension in that way?
是的,根据文档,这是正确的用法。
我正在努力提高我对 NetLogo 中列表的理解。 很快,我将在列表中添加和挑选(和删除)项目。每只海龟都有自己的列表。 每个列表应包含按时间顺序排列的项目,从最近到最旧。一旦海龟选择了一个项目,邻居们就会将这个项目放在他们列表的顶部(对于选择该项目的海龟也是如此)。我试图做的是:
rnd:weighted-one-of-list mylist [ [ii] -> ii ] ; pick one of the most recent items already in the list
set mylist lput old_item mylist print "Old item" ; add items to the list
使用 JenB 在之前 post 中建议的扩展。
使用从列表中选择一个项目(旧项目)的条件是 mylist 不为空(if empty? mylist
)。
我的问题是像我那样使用扩展名选择项目是否正确。
更新:列表按以下方式组成:
我决定创建一个新项目,item 4
和 quality 2
(质量是 [0,5]
中的一个参数)。
我将此项目添加到我的列表 (item 4, item3, item2, item1)
- 从最近到最旧 - 质量分别为 item4 2, item3 1, item2 2, item1 5
,并在邻居的列表中:例如 neighbour1
,将列表 (item4, item 11, item 10,..)
和 quality 2, 3, 1
分别。
我期望的是根据质量参数从列表中选择一个项目。这意味着我将从我的列表中选择 item1
。我的邻居会选择 item11
,因为它的质量等于 3,即同类中最高的。
感谢您的帮助。
我正在阅读https://ccl.northwestern.edu/netlogo/docs/rnd.html
rnd:weighted-one-of-list mylist [ [ii] -> ii ]
is it correct to pick an item using the extension in that way?
是的,根据文档,这是正确的用法。