在 NetLogo 中的每个刻度中从特定文件中读取

read from a specific file in each tick in NetLogo

我正在使用 NetLogo。我有 10 个代理,我想 更改 我的代理在每个 tick 中的属性之一。我有一个 .txt 文件,我想在每个刻度中读取该文件的十行。换句话说,我想在第一个滴答中读取 10 行,然后在下一个滴答中读取另外十行。所以我想 保持文件打开状态 并在每个刻度中读取其中的 10 行。你知道我该如何处理吗? 我试着去做,但我仍然有问题。这是部分代码:

to go
  tick
  define-globals
  if (ticks = 10)
  [stop
    file-close]
end

anf 用于定义全局变量:

to define-globals
  file-open "D:\data\percentage.txt"
      let per file-read
       set percentage per
           ask agents [ set label percentage ]
end

问题是当我想 运行 模型第二次或第三次等时,我收到此消息: 已到达文件末尾

听起来你应该让你的代理读取你的文件。

file-open "myfile.txt"
ask agents [set label file-read]

只要你没有明确关闭文件,再次打开它就returns你到文件中的同一个地方