Existe-t-il un indice/annotation de type Python pour les objets de code (tels que renvoyés par compile sur les chaînes de code source, ou le résultat de l'appel de l'attribut __code__ sur une méthode) ? J'ai une méthode qui accepte un seul argument d'objet de code et je souhaite l'annoter de manière appropriée en utilisant de manière appropriée la bibliothèque typing.

>>> c = compile('x = 1', 'test', 'single')
>>> <code object <module> at 0x1075f8660, file "test", line 1>
>>> c
>>> code
>>> type(c)
>>> type
>>> typing.get_type_hints(c)
>>> {}
0
srm 22 févr. 2020 à 22:14

1 réponse

Meilleure réponse

Oui, il est disponible dans le module types :

from types import CodeType
code: CodeType = compile('x = 1', 'test', 'single')
1
juanpa.arrivillaga 22 févr. 2020 à 20:25