web-dev-qa-db-fra.com

Tapez hint pour un fichier ou un objet de type fichier?

Existe-t-il un indice de type correct à utiliser pour un fichier ou un objet similaire à un fichier en Python? Par exemple, comment pourrais-je taper la valeur de retour de cette fonction?

def foo():
    return open('bar')
48
Mark Amery

Utilisez les types typing.TextIO Ou typing.BinaryIO Pour les fichiers ouverts respectivement en mode texte ou en mode binaire.

De les docs :

classe typing.io

Espace de noms Wrapper pour les types de flux d'E/S.

Ceci définit le type générique IO[AnyStr] Et les alias TextIO et BinaryIO pour respectivement IO[str] Et IO[bytes]. Ceux-ci représentant les types de flux d'E/S tels que retournés par open().

57
Wayne Werner