這method是印出傳入的5, 5那個點的陸地大小,不是全部中間那個陸地只有23個點沒錯感覺你似乎沒有程式背景,一般程式語言中陣列的計算是從0開始喔,所以(5,5)的話你要數第(6,6)個位置才是然後就像你的圖一樣,找周圍8個點繼續計算就是了綠框的位置剛好連接紅框那邊的陸地和綠框上面那個陸地你把綠框改成水以後,兩邊就不相連了,所以計算不到你試試continent_size(world, 8, 2)world[1][2]會去找從world第二排第三個所以你的右上角應該是world[2][8]但是continent_size中是用world[y][x],所以要反過來上面說得不清楚,world[1][2]是找world第二橫排第三個基本上,你可以把第一個[]裡面的數字當作row第二個[]裡面的數字當作column這裡的M宣告在def外面,不能用在def裡面詳細的原因挺難解釋的,會牽扯到class的context的問題Sorry,我忘記這是大寫M...,大寫的M是constant,可以用在def裡面沒錯