チェス盤のような配列を作成するより良い (そしてより短い) 方法はありますか? ボードの要件は次のとおりです。
- ボードは異なるサイズにすることができます (私の例では 3x3 です)
- ボードの左下の四角は常に黒くする必要があります
- 黒い四角は によって提示され
"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']