Подсказка по выбору типа в Google Style Guide - PullRequest
0 голосов
/ 05 мая 2020

У меня есть сомнения относительно подсказки типа Optional в Google Python Style Guide . В разделе 3.19.5 показано правильное использование:

def func(a: Optional[Text], b: Optional[Text] = None) -> Text:

Я не понимаю a: Optional[Text]. Почему не a: Optional[Text] = None?

1 Ответ

1 голос
/ 05 мая 2020

Просто потому, что это Optional, не означает, что ему нужен аргумент по умолчанию или что аргумент является «необязательным».

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

Часть путаницы может быть связана с использованием здесь термина «необязательный». «Необязательный» в этом контексте не означает, что аргумент является необязательным. Это означает, что это вариант .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...