강의 재밌게 잘 보고 있습니다~! def click_cell(e):에서 not winner 2번 확인하는 부분이 있는데, 그 사이에 check_win()하는 로직이 없기 때문에 업데이트가 안되는 것 같습니다. 그 밑에 print_turn_message() 내부에 정의되어있어서요~! 요롷게 진행되면, O를 맨 마지막 1칸에 두어 Tie가 바로 떠야하는데 안뜨더라구요~! check_win()도 잘 정의해주신 선생님 덕분에, 조금만 수정하니 잘 작동하는 것 같습니다. def click_cell(e): cell_id = int(e.target.id) if not board[cell_id] and not is_end: mark_cell_and_change_turn(cell_id) 이후에 if vs_ai.checked and not is_player1 and not winner: ai_turn() 대신 if not check_win()[0] and vs_ai.checked and not is_player1: ai_turn() 으로 이렇게 print_turn_message() 내부에 있는 check_win()를 가져와 [0]번재 반환값으로 종료여부 조건을 먼저 확인해주도록 수정하였습니다~!
강의 재밌게 잘 보고 있습니다~!
def click_cell(e):에서 not winner 2번 확인하는 부분이 있는데, 그 사이에 check_win()하는 로직이 없기 때문에 업데이트가 안되는 것 같습니다. 그 밑에 print_turn_message() 내부에 정의되어있어서요~!
요롷게 진행되면, O를 맨 마지막 1칸에 두어 Tie가 바로 떠야하는데 안뜨더라구요~!
check_win()도 잘 정의해주신 선생님 덕분에, 조금만 수정하니 잘 작동하는 것 같습니다.
def click_cell(e):
cell_id = int(e.target.id)
if not board[cell_id] and not is_end:
mark_cell_and_change_turn(cell_id)
이후에
if vs_ai.checked and not is_player1 and not winner:
ai_turn() 대신
if not check_win()[0] and vs_ai.checked and not is_player1:
ai_turn() 으로
이렇게 print_turn_message() 내부에 있는 check_win()를 가져와 [0]번재 반환값으로 종료여부 조건을 먼저 확인해주도록 수정하였습니다~!
말씀하신 방법으로 하는것이 좀 더 효율적인것 같네요...^^
더 좋은 방법이 있으면 언제든 조언 부탁 드리겠습니다..^^