Я использовал дерьмо из модуля typing
, потому что я обнаружил, что это делает возвращение к чтению и пониманию моего кода примерно в 3 раза проще. Это также делает pycharm вдвое полезнее.
Я знаю, что для указания типа одиночных позиционных аргументов OR можно сделать это:
def f(*args: int = 0) -> None:
# integers are expected for args
pass
Кроме того, если позиционные аргументы могут быть нескольких типов, вы можете использовать Union
для обработки этого случая:
from typing import Union
def f(*args: Union[str, int]) -> None:
# integers OR strings are expected for args
pass
Мой вопрос: есть ли способ сообщить средству проверки типов, чтобы убедиться, что args
являются ЛИБО ВСЕМИ int
, ИЛИ ВСЕМИ str
, но не смесью обоих, но не ограничиваясь ТОЛЬКО int
или ТОЛЬКО str
?