Ссылка на этот вопрос: Какой канонический способ проверки типа в Python?
Говорят, что лучший способ проверить входные данные - это не проверять их, то есть разрешить блокам try / кроме заботиться о неверных входных данных.
Мой вопрос заключается в том, что если я хочу разработать функцию, которая обрабатывает несколько входов, моя интуиция заключается в том, чтобы сделать что-то подобное
def my_function(self, input):
if isinstance(input, type):
...do this
elif isinstance(input, type2):
...do that
else
print("can only handle type and type2")
raise TypeError
но это непитонично. Как мне это структурировать?
В моем конкретном прецеденте я хочу создать функцию, которая может обрабатывать list
или pandas DataFrame
, но из POV дизайна функции, как мне разработать это в попытке, кроме парадигмы? Это вроде "некрасиво", но я также еще не видел код, который делает это в python.