python - 类文件对象的 `write` 方法返回什么?

标签 python file io

Python 的内置 open 函数返回一个“类似文件的对象”。这些文件对象也可以通过其他方式获取,并且可能并不真正代表文件。

我无法找到我想了解的有关这些的信息。

https://docs.python.org/3/glossary.html#term-file-object声明所有文件对象都有一个共同点:它们公开“面向文件的 API”。但我找不到任何有关此 api 的文档。

文件对象的write方法似乎返回一个整数,但它代表什么?返回值是否保证为整数?文件对象保证具有哪些方法和属性?

最佳答案

人们不太可能使用 write 的返回值如果任何特定的类似文件的对象刚刚返回 None 我不会感到惊讶。也就是说,有一些类似于规范的东西。

类似文件对象的方法应提供的行为记录在 io module docs 中。 ,在抽象基类下。虽然许多类文件对象不会是这些 ABC 的实例,并且许多类文件对象不会提供最近的 ABC 中的所有方法,但它们提供的方法应该与 ABC 文档相匹配。

对于类似二进制文件的对象,write应返回写入的字节数,如 RawIOBase.write 下所述.

对于类似文本文件的对象,write应返回写入的字符数,如 TextIOBase.write 下所述.

关于python - 类文件对象的 `write` 方法返回什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58424024/

相关文章:

python - Paramiko 相当于管道控件和输入/输出管道

Android eclipse 将 SQLite 表行转储到文本文件中

python - 如何才能使 FFT 峰值精确地处于信号频率?

python - '导入错误 : cannot import name cbook' when using PyCharm's Profiler

来自 Linux CLI 的 Python 图形

haskell - 在交互式命令行提示期间维护状态

java - 如何从java资源文件夹内的文件夹中获取所有文件的列表

python - 嵌套 FOR 循环索引问题 - Python

Java:将文件名拆分为基础和扩展名

c++ - 为什么 C++ 在 C 中已经存在的 IO 中引入了新函数?