Иногда проверка аргументов в Python необходима. например, у меня есть функция, которая принимает либо адрес другого узла в сети в качестве необработанного строкового адреса, либо класс Node, который инкапсулирует информацию о другом узле.
Я использую функцию type() как в:
if type(n) == type(Node):
do this
elif type(n) == type(str)
do this
Это хороший способ сделать это?
Обновление 1: Python 3 имеет аннотацию для параметров функции. Их можно использовать для проверки типов с помощью инструмента: http://mypy-lang.org/