該函式應該遍歷所有串列項并檢查引數坐標是否接近串列項中的位置(嵌套串列中的第二個和第三個數字),但從讀數中我可以看出它只是檢查第一個。
function CapitalProximity(x,y)
local positions = {{"lusitani",31,328},{"ebdani",78,592},{"carpetani",101,329}}
for i = 1, #positions do
local dist = distance_2D(x,y,positions[i][2],positions[i][3])
print("position is "..dist.." from "..positions[i][1])
if dist < 20 then
return true
else
return false
end
end
end
uj5u.com熱心網友回復:
由于兩個分支都if從回圈內部回傳,因此回圈永遠無法到達第二次迭代。要根據陣列中的所有元素獲取結果positions,您需要創建一個表來存盤它們:
function CapitalProximity(x,y)
local positions = {{"lusitani",31,328},{"ebdani",78,592},{"carpetani",101,329}}
local result = {} -- This will hold all results.
for i = 1, #positions do
local dist = distance_2D(x,y,positions[i][2],positions[i][3])
print("position is "..dist.." from "..positions[i][1])
result[i] = dist < 20 -- Store the current result.
end
return result
end
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/435242.html
上一篇:selenium.common.exceptions.InvalidArgumentException:訊息:在遍歷url串列并作為引數傳遞給get()時引數無效
