NetLogo:将变量存储在列表中并遍历它们

NetLogo: storing variables in list and iterating through them

我想循环遍历 NetLogo 中的一系列变量。想法是将这些值作为变量插入 UI 中,并在 whileforeach 循环中迭代这些值。还有如何获得每个值 - 在 Python 中,当你遍历它们时很容易,但如果我使用 NetLogo,那么我必须采用 "item x in list",我可以用同样的方式访问列表中的变量吗?在 Python 中如下所示:

variables = [x0, x1, x2, x3, x4]
for x in variables:
    print (x)

输出是 x0 到 x4 作为代码中使用的变量。

如果您询问如何将 UI 中的变量放入列表中,您可以使用 list 原语构建用户输入的变量列表,例如使用 "Input" 在 UI 中。然后,您可以使用 foreach 遍历该列表中的项目。

  let x_list (list x0 x1 x2 x3 x4 )

  foreach x_list [ 
    [x] ->
    print(x)
  ]

幸运的回答是正确的。但是如果你有大量类似命名的变量,请注意你也可以这样做:

let xs map [ [n] -> runresult word "x" n ] range 5
foreach xs [ [x] ->
  print x
]