有沒有更好(也是更短)的如何創建類似棋盤棋盤的方法。對董事會的要求是:在二維陣列中創建黑白棋盤
- 板可以是不同的大小(以我的例子是3×3)董事會
- 左下方應始終是黑色
- 黑色方塊是由
"B"
介紹,白方是通過"W"
碼錶示,我有:
def isEven(number):
return number % 2 == 0
board = [["B" for x in range(3)] for x in range(3)]
if isEven(len(board)):
for rowIndex, row in enumerate(board):
if isEven(rowIndex + 1):
for squareIndex, square in enumerate(row):
if isEven(squareIndex + 1):
board[rowIndex][squareIndex] = "W"
else:
for squareIndex, square in enumerate(row):
if not isEven(squareIndex + 1):
board[rowIndex][squareIndex] = "W"
else:
for rowIndex, row in enumerate(board):
if not isEven(rowIndex + 1):
for squareIndex, square in enumerate(row):
if isEven(squareIndex + 1):
board[rowIndex][squareIndex] = "W"
else:
for squareIndex, square in enumerate(row):
if not isEven(squareIndex + 1):
board[rowIndex][squareIndex] = "W"
for row in board:
print row
輸出:
['B', 'W', 'B']
['W', 'B', 'W']
['B', 'W', 'B']
我敢肯定,你可以有使用模量一定的情況下。每個位置的顏色將基於行和列號。 – Evo510 2013-05-02 21:02:02
國際海事組織,採取預先打擊和使用位面板! - 它們在一切方面都嚴格優越:內存佔用,計算速度......它比嵌套的字符串列表更適合更優雅的設計。 – hexparrot 2013-05-02 21:17:55
你有沒有考慮將它列爲一個單子列表,按順序填入適當的值,然後將它重新組裝成一個MxN網格? – 2013-05-02 21:06:40