Инфраструктура I/O была переработана в Python 3, полностью заменив старый файл Python 2 файлом new object hierarchy.
При открытии файла в текстовом режиме, вы получите объект, реализующий интерфейс io.TextIOBase
, который оборачивает на io.BufferedIOBase
объект, который, в свою очередь, оборачивает что-то implemting интерфейса io.RawIOBase
; многие методы на первых двух являются прокси-серверами для методов на объекте, который они обертывают.
Ни классы io.TextIOBase
, ни классы io.BufferedIOBase
не имеют докстеров на этих различных прокси-методах.
Вы можете добраться до объекта сырого I/O с f.buffer.raw
и получить информацию справки о .seek
методе там:
help(f.buffer.raw.seek)
Вы также могли бы сделать дело, что это ошибка; возможно, у прокси-методов должна быть, по крайней мере, указатель, указывающий, что они передают вызов своему базовому объекту, чтобы вы могли найти оригинальный метод. В таких случаях было бы полезно указать указатель на атрибут f.buffer
. Не стесняйтесь сделать этот случай на Python issue tracker.