我試圖將舊代碼移植到最新版本(6.0.1),下面的foreach循環在Netlogo 4.1.3上正常工作,但是將代碼複製並粘貼到版本6.0.1時,「item 0?「不起作用。它說「?」未定義。這行代碼是假設檢索段Netlogo foreach嵌套列表
to setup-row [row colour segments]
foreach segments
[
if pycor = row * row-patches-width and
(pxcor >= col-patches-width * (item 0 ?)) and (pxcor <= col-patches-
width * (item 1 ?))
[set pcolor colour
output-print item 0 ?]
]
end
在「段」的通過內部列表項變量包含以下列表:
setup-row 4 blue [[-8 -5] [-3 -1] [0 3] [5 9]]
如果代碼工作正常,應該檢索-8(項目0?)和-5(項目1?)等等。我在舊代碼中假設的是「?」是從[-8-5]和(項目0?)檢索-8並且(項目1?)檢索到-5的片段檢索的第一個列表。
我試圖通過閱讀新的用戶手冊來找到類似的作品,但無濟於事,也許我沒有看到正確的地方。希望你們中的一些人能夠指引我正確的方向。
感謝您的示例和有用的鏈接。我猜想我看起來不夠努力,我正在尋找轉換指南之類的東西。 –
是的,在6.0.1中,當變量名是單個變量時,可以(謝天謝地)刪除括號,例如:'foreach ex [xy_coords - > ...]'。 –
啊,甚至更好。感謝更新! –