С тех пор, как я обнаружил подсказки типов в Python, я начал их использовать, так как считаю, что они полезны для читателя кода. Я ожидаю, что в будущем эти подсказки типов в конечном итоге станут средствами статической проверки типов, потому что это сделает код намного более надежным, а это очень важно для серьезного проекта.
Кроме того, у меня есть много функций, в которых тип возвращаемого значения может быть либо BSTNode
, либо None
. Например, это может быть None
, потому что в функции поиска, если BSTNode
не найдено, просто возвращается None
. Есть ли способ указать, что возвращаемый тип также может быть None
?
В настоящее время я использую что-то вроде следующего
def search(self, x) -> BSTNode:
pass
Я знаю, что могу использовать строки в качестве подсказок типа, но я не уверен, что это правильный или лучший способ сделать это.
def search(self, x) -> "BSTNode | None":
pass