Você pode definir a dica de tipo para uma variável definida com a withsintaxe?
with example() as x:
print(x)
Gostaria de digitar dica acima para dizer que xé um str(como exemplo).
A única solução alternativa que eu encontrei é usar uma variável intermediária, mas isso parece hacky.
with example() as x:
y: str = x
print(y)
Não consigo encontrar um exemplo na documentação de digitação .
xquando é simplesmente o tipo de retorno example.__enter__? Idealmente, você anotou esse método / função.
xnão é o valor de retorno de example; é o valor de retorno de example().__enter__().
example. Anotar example.__enter__significa uma anotação enquanto você usa sua abordagem em todos os lugares em que esse gerenciador de contexto é usado, além de, em geral, como um usuário deve saber qual é o tipo de retorno de uma API se ela não for fornecida?
xcomo o tipo de retornoexample().__enter__()?