我正在嘗試構建一個tic tac腳趾遊戲,並且在製作工作函數時檢查板子是否有問題充分。我對董事會名單
board = [' ',' ',' ',' ',' ',' ',' ',' ',' ']
和我的功能是如何解決我的函數,檢查我的井字遊戲中的全板
def fullBoard():
"""Returns a boolean value reporting the state of the board, full or not.
True for full, False for not full."""
for y in board:
if board[y] == ' ':
return False
print(False)
break
else:
print(True)
return True
什麼,我想要它做的是搜索列表中的每個項目,當它找到一個「」或空間,則返回false和休息循環。但如果沒有''它返回真正意思董事會已滿(我把打印功能只是爲了我的緣故,當我試圖修復織補事情。)
我認爲這會工作,但我得到TypeError :列表索引必須是整數或切片,而不是str指向我的if board[y] == ' ':
行。如果有人知道如何以我想要的方式工作,那會很棒。另外請注意,我只在comp prog 1中,並且處於非常基礎的級別,所以簡單性最好。 (也請不要試圖縮短或跑得更快,我只是想知道我犯的錯誤是什麼,所以我可以從中學習)。非常感謝!
另一種選擇是避免使用'in'或'不in'運營商自己的編碼循環(見[這裏](HTTPS://docs.python。 org/3/library/stdtypes.html#sequence-types-list-tuple-range)。在Python 2中,還有更多的泛化函數'reduce','all'和'any',您可以在檢查比特定值的存在/不存在更復雜的東西時使用。我想他們仍然可以在Python 3中找到,但我想我記得'reduce'作爲一個全局函數被棄用,因爲它不直觀。 – Steve314