test and check give two different results
for test five ([".O.","XXX",".O."]) it claims I return a 'D' but when I enter the same value as a test, I receive the correct result. am I missing something or is there a bug?
From: http://www.checkio.org/mission/x-o-referee/solve/
HTTP_USER_AGENT:
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36
My Code:
def checkio(game_result): for y in game_result: if y is 'XXX': return 'X' if y in 'OOO': return 'O' for y in range(3): if game_result[0][y] is game_result[1][y] is game_result[2][y]: return game_result[0][y] if game_result[0][0] is game_result[1][1] is game_result[2][2]: return game_result[0][0] if game_result[0][2] is game_result[1][1] is game_result[2][0]: return game_result[0][2] return 'D' if __name__ == '__main__': #These "asserts" using only for self-checking and not necessary for auto-testing assert checkio([ "X.O", "XX.", "XOO"]) == "X", "Xs wins" assert checkio([ "OO.", "XOX", "XOX"]) == "O", "Os wins" assert checkio([ "OOX", "XXO", "OXX"]) == "D", "Draw" assert checkio([ "O.X", "XX.", "XOO"]) == "X", "Xs wins again"