のために必要な指導、私はこのメッセージは、ラインのpython - 戦艦ゲーム - これは私の戦艦ゲームのための私のコードでエラー
if (guess_row < 0 or guess_row > 4) or (guess_col < 0 or guess_col > 4):
に表示されます "Type error: unorderable types: str() < int()"
のエラーメッセージが出続けます完全なコードは以下の通りです:
import random
board = []
for x in range(0,5):
board.append(["O"] * 5)
def print_board(board):
for row in board:
print (" ".join(row))
print ("Let's play Battleship!")
print_board(board)
def random_row(board):
return random.randint(0,len(board)-1)
def random_col(board):
return random.randint(0,len(board[0])-1)
ship_row = random_row(board)
ship_col = random_col(board)
print (ship_row)
print (ship_col)
for turn in range(4):
guess_row = input("Guess Row:")
guess_col = input("Guess Col:")
if guess_row == ship_row and guess_col == ship_col:
print ("Congratulations! You sunk my battleship!")
break
else:
if turn == 3:
board[guess_row][guess_col] = "X"
print_board(board)
print ("Game Over")
print ("My ship was here: [" + str(ship_row) + "][" + str(ship_col) + "]")
else:
if (guess_row < 0 or guess_row > 4) or (guess_col < 0 or guess_col > 4):
print ("Oops, that's not even in the ocean.")
elif(board[guess_row][guess_col] == "X"):
print ("You guessed that one already.")
else:
print ("You missed my battleship!")
board[guess_row][guess_col] = "X"
print (turn + 1)
print_board(board)
フォーマットを修正してください。ありがとうございます! – Chris
エラーメッセージを見て、guess_rowとguess_colが文字列である可能性はありますか? if(int(guess_row)<0またはint(guess_row)> 4)または(int(guess_col)<0またはint(guess_col)> 4): – ysearka
これは、 'guess_row'と' guess_col'の値を入力します。これらの値は文字列です。それらを整数に変換します。 – Matthias