Задать вопрос
@OctorberMyMonth

Как правильно понять данный код?

Ребят, помогите понять код:
EMPTY = ""
board = [
    "0", "1", "2",
    "3", "4", "5",
    "6", "7", "8"]
def winner(board):
    '''Определяет победителя в игре'''
    WAYS_TO_WIN = ((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 row in WAYS_TO_WIN:
     <b> if board[row[0]] == board[row[1]] == board[row[2]] != EMPTY:</b>
            winner = board[row[0]]
            return winner

Мне все понятно, кроме строки:
for row in WAYS_TO_WIN:
        if board[row[0]] == board[row[1]] == board[row[2]] != EMPTY:

board[row[0]] -как понять это выражение, переменная с 2-мя индексами?
  • Вопрос задан
  • 117 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@o5a
row in WAYS_TO_WIN берет по одному кортежу за цикл.
Соответственно для 1-й итерации цикла row = (0, 1, 2), т.е. row[0] = 0 и board[row[0]] = board[0]
Это обычная индексация списка.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы