Я продолжаю получать "слишком много позиционных аргументов для вызова функции" - PullRequest
0 голосов
/ 07 ноября 2019

Я делаю игру Tic Tac Toe, я пытаюсь вызвать функцию, но она не позволяет мне вызывать ее

def full_board_check(board):
    for i in range(1,10):
        if space_check(board,i):
            return False

space_check должен проверять свободные места на доске, но она не будет работать

1 Ответ

0 голосов
/ 07 ноября 2019

Я не могу сказать вам исправление, пока не посмотрю код, но не смогу объяснить ошибку.

Это означает, что вы даете слишком много позиционных аргументов, чем вы ожидаете. Хорошо.

Так что же это за позиционные аргументы? Позиционные аргументы - это те, в которых порядок / позиция в вызове имеет значение, например divide(x, y) => x/y. Имеет значение, в каком порядке / позиции x, y входить. Если вы делаете divide(2, 3) != divide(3, 2).

Python также имеет помеченные аргументы, например, divide(numerator=0, denominator=1) => numerator/denominator сейчас, если вы называете его так divide(denominator=3, numerator=2) => 2/3, он все равно ищет 2 /3, а не переключая их.

Так что, скорее всего, ваша space_check функция принимает только одну позицию, а остальные именуются. Так что вам нужно взглянуть на документы, выяснить это и использовать их.

Подробнее здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...