web-dev-qa-db-ja.com

ファイルまたはファイルのようなオブジェクトのタイプヒント?

Pythonでファイルまたはファイルのようなオブジェクトに使用する正しいタイプヒントはありますか?たとえば、この関数の戻り値をどのように入力ヒントしますか?

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

テキストモードまたはバイナリモードで開かれたファイルには、それぞれ_typing.TextIO_または_typing.BinaryIO_タイプを使用します。

ドキュメント から:

クラス_typing.io_

I/Oストリームタイプのラッパー名前空間。

これにより、汎用タイプ_IO[AnyStr]_と、それぞれ_IO[str]_および_IO[bytes]_のエイリアスTextIOおよびBinaryIOが定義されます。これらは、open()によって返されるようなI/Oストリームのタイプを表します。

57
Wayne Werner