Просто потому, что это Optional
, не означает, что ему нужен аргумент по умолчанию или что аргумент является «необязательным».
Optional[Text]
означает, что «это может быть объект Text
или это может быть None
". Однако значение None
не обязательно должно быть заданным по умолчанию; он может быть предоставлен пользователем. По какой-то причине вы можете захотеть, чтобы пользователь передал этот аргумент, даже если это всего лишь None
.
Часть путаницы может быть связана с использованием здесь термина «необязательный». «Необязательный» в этом контексте не означает, что аргумент является необязательным. Это означает, что это вариант .