Я добавляю подсказки типа к некоторому коду Python 2 и натолкнулся на небольшую дилемму. Как намекнуть на тип возврата функции, когда этот возврат может быть одним из нескольких типов?
Я работаю с функцией, которая выглядит как ...
def foo(param):
# do stuff
return dict_
, где param
- строка, а dict_
- словарь с ключами, которые всегда являются строками, и значениями, которые могут быть целыми числами или строками.
Мое решение состояло в том, чтобы напечатать подсказку функции, как показано ниже, но я хотел проверить, что это правильная стратегия.
def foo(param):
# type: (str) -> Dict[str, object]
# do stuff
return dict_