Tic-Tac-Toe(틱택토) 게임?
틱택토(tic-tac-toe)는 두 명이 번갈아가며 O와 X를 3×3 판에 써서 같은 글자를 가로, 세로, 혹은 대각선 상에 놓이도록 하는 놀이이다. 오목 룰과 흡사하다.
코드
board = [' ' for _ in range(9)]
def show_board():
print(f'{board[0]} | {board[1]} | {board[2]}')
print('- | - | -')
print(f'{board[3]} | {board[4]} | {board[5]}')
print('- | - | -')
print(f'{board[6]} | {board[7]} | {board[8]}')
def check_win(player):
win_values = [
[0, 1, 2], [3, 4, 5], [6, 7, 8],
[0, 3, 6], [1, 4, 7], [2, 5, 8],
[0, 4, 8], [2, 4, 6]
]
for value in win_values:
if all(board[i] == player for i in value):
return True
return False
player = 'X'
while True:
show_board()
print(f'Player {player}, 차례입니다.')
choice = int(input('빈 칸에 1부터 9까지의 숫자를 입력하세요: '))-1
if board[choice] == ' ':
board[choice] = player
if check_win(player):
show_board()
print(f'Player {player}가 이겼습니다!')
break
if ' ' not in board:
show_board()
print('무승부입니다!')
break
player = 'O' if player == 'X' else 'X'
else:
print('해당 위치에는 이미 기호가 있습니다. 다른 위치를 선택하세요.')
실행
012
마무리
학교 다닐적 공책을 찢어 자주 했던 기억이 나 코딩해본 틱택토 게임입니다.
3x3의 단순한 게임이라 쉽게 코딩이 가능했던 것 같습니다.
반응형
'IT > Python' 카테고리의 다른 글
[Python] 대/소문자 전환 프로그램 (0) | 2023.09.20 |
---|---|
[Python] 틱택토 게임 (Tic-Tac-Toe) + 인공지능 AI 추가 (0) | 2023.09.18 |
[Python] 포커 족보 검색기 (47) | 2023.09.15 |
[Python] 쇼핑몰 이미지 크롤링 (30) | 2023.09.14 |
[Python] 대통령 연설문 크롤링 (0) | 2023.09.13 |