Как правильно вводить аргументы функции, содержащие только ключевые слова ⇐ Python

Программы на Python
Anonymous
Как правильно вводить аргументы функции, содержащие только ключевые слова

Сообщение Anonymous »

Ну, учитывая следующий код:

Код: Выделить всё

from typing import Callable

def delete_test_user_description(*, request: int | None = None) -> str:
"""Get a string indicating which users will be deleted

:return str: indication of which users will be deleted
"""
return "ok"

COMMAND_DESCRIPTIONS: dict[str, Callable[[int | None], str]] = {
"Delete test users": delete_test_user_description,
}
MyPy (и другие средства проверки ввода) выдадут ошибку о типе аргумента функции. Однако если я удалю символ *, но оставлю использование функции таким же, это сработает.
Как мне правильно это напечатать? Для MyPy, очевидно, существует расширение DefaultNamedArg, однако это приводит к странному виду кода. Но более того, это только mypy. Разве это использование не распространяется на настойчивость при наборе текста?

Подробнее здесь: https://stackoverflow.com/questions/790 ... -arguments

Вернуться в «Python»