Я, кажется, нашел синтаксическую ошибку аргументов функции в Python. Что мне делать?

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

def __eq__ (_, _):
    return True

Питон кинул синтаксическую ошибку:

File "file.py", line 8
def __eq__ (_, _):
^
SyntaxError: duplicate argument '_' in function definition

Ошибка: 2 одинаковых аргумента. Вот информация по этой ошибке: https://www.flake8rules.com/rules/F831.html Питону кажется, что "_" - это имя переменной, а не знак удаления.

Мою проблему решает удаление *args def __eq__ (*_):, но это костыль, потому что функция примет сколько угодно аргументов. Получается, это ошибка интерпретатора. Куда на нее жаловаться? Минимальный воспроизводимый пример:

def f (_, _):
    pass

Ответы (1 шт):

Автор решения: Mike

Подчеркивание не знак удаления. никакого удаления в питоне нет. _ это обычное имя переменной, которое просто принято использовать для обозначения, что эти данные не нужны. В то же время никто не запрещает использовать ее как обычную переменную. И да, все параметры надо указать. Напишите например 'a' и 'b'

→ Ссылка