是否可以通过在另一个列表中包含一个列表来连接列表?

时间:2014-12-22 10:56:38

标签: netlogo

我有两个将在运行时创建的列表。我希望结合已经创建的列表,以便稍后可以在代码中访问数据,最终目标是简化代码并提高模型效率。可以通过在另一个中包含一个列表来连接列表,还是以另一种方式? 感谢。

3 个答案:

答案 0 :(得分:5)

连接列表的常用方法是使用sentence原语。这将为您提供一个新列表,其中包含两个原始列表的元素,例如Jen的答案。

或者,您可以使用list原语构建一个列表,其中包含两个原始列表 sub - 列表。

以下示例显示了两种方法:

to setup
  let list1 [ 1 2 3 ]
  let list2 [ 4 5 6 ]
  print sentence list1 list2 ; will print: [1 2 3 4 5 6]
  print list list1 list2 ; will print: [[1 2 3] [4 5 6]]
end

你应该选择哪一个当然取决于你想用它做什么......

答案 1 :(得分:2)

这可能是一种更有效的方法,但循环遍历其中一个列表(使用foreach)并将元素添加到另一个列表(使用lput)将起作用。

to setup
  let mylist1 [1 2 3]
  let mylist2 [4 5 6]
  foreach mylist1 [ set mylist2 lput ? mylist2 ]
  show mylist2
end

答案 2 :(得分:0)

句子命令可以合并两个不带括号的列表

[