Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

164
Vistas
¿Una declaración "con" admite sugerencias de tipo?

¿Puede definir la sugerencia de tipo para una variable definida con la sintaxis with ?

 with example() as x: print(x)

Me gustaría escribir una sugerencia de lo anterior para decir que x es una str (como ejemplo).

La única solución que he encontrado es usar una variable intermedia, pero esto se siente extraño.

 with example() as x: y: str = x print(y)

No puedo encontrar un ejemplo en la documentación de escritura .

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Por lo general, las anotaciones de tipo se colocan en los límites de la API. En este caso, el tipo debe deducirse de example.__enter__ . En caso de que esa función no declare ningún tipo, la solución es crear un archivo auxiliar correspondiente para ayudar al verificador de tipos a inferir ese tipo.

Específicamente, esto significa crear un archivo .pyi con la misma raíz que el módulo desde el cual se importó el Example . Luego se puede agregar el siguiente código:

 class Example: def __enter__(self) -> str: ... def __exit__(self, exc_type, exc_value, exc_traceback) -> None: ...
over 4 years ago · Santiago Trujillo Denunciar

0

PEP 526, que se implementó en Python 3.6, le permite anotar variables. Puede utilizar, por ejemplo,

 x: str with example() as x: [...]

o

 with example() as x: x: str [...]
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda