我剛開始用小腳本學習python。如果第一行與第一列相同,我碰到一個測驗以確定列表是對稱的, 第二行與第二列相同,依此類推。如果python中的塊沒有用True語句執行
def symmetric(block):
n = len(block)
i = 0
for i in range(n-1):
j = 0
for j in range(n-1):
if (block[i][j] != block[j][i]):
return False
j +=1
i +=1
return True
所以
print symmetric([["cat", "dog", "fish"],
["dog", "dog", "dog"],
["fish","fish","cat"]])
的結果應該是假的。
但是,這段代碼總是返回True,而在調試器中,我可以看到block[i][j] != block[j][i]
返回True,但if塊沒有執行。比較有沒有什麼問題,或者如果塊的構成不正確?
請修復您的縮進。嚴重縮減的Python代碼是無稽之談。 – khelwood
第三行'i = 0'沒有意義!第五行也一樣。 – phynfo