Одним из преимуществ статической типизации является то, что типы являются формой документации. При программировании на Python вы можете более гибко и свободно документировать. Конечно, в вашем примере вы хотите сказать, что network_interface должен реализовывать NetworkInterface, но во многих случаях тип очевиден из контекста, имени переменной или по соглашению, и в этих случаях, опуская очевидное, вы можете создать более читаемый код. Общим является описание значения параметра и неявное указание типа.
Например:
def Bar(foo, count):
"""Bar the foo the given number of times."""
...
Это описывает функцию кратко и точно. То, что означает foo и bar, будет очевидно из контекста, и это число (положительное) целое число неявно.
Для вашего примера я бы просто упомянул тип в строке документа:
"""Create a named host on the given NetworkInterface."""
Это короче, более читабельно и содержит больше информации, чем список типов.