Я думаю, что в этом случае, возможно, было бы лучше подать запрос функции / отправить запрос на извлечение вашему редактору, улучшив качество подсказок его типа. Аналогично, с помощью sphinx вы можете отправить запрос на извлечение, который гарантирует, что документы либо правильно ссылаются на определение Some, либо включают более подробное описание в саму сигнатуру функции.
В конце концов, проблема, с которой вы столкнулись столкновение является ограничением вашего редактора / сфинкса, а не с Python или подсказками типа, и вы можете получить более долгосрочные результаты, если решите проблему в источнике.
Вы также можете получить лучшие результаты, если вы используете "конструктор" Some
вместо передачи в dict литерал. По крайней мере, для меня это дает мне полные подсказки клавиш для Some
при использовании PyCharm. Не уверен, что так будет и с вашим редактором:
some(Some(keya='key', another_key='nonething'))
Обратите внимание, что выполнение Some(...)
на самом деле просто возвращает обычный старый обычный dict во время выполнения, поэтому это не должно привести к каким-либо различиям. в поведении.
Также стоит попробовать:
x: Some = {
"keya": "key",
"another_key": "nonething",
}
some(x)
... чтобы увидеть, может ли ваш редактор дать лучшие подсказки с этой формой.