有趣生活

当前位置:首页>科技>python读取文件的一般流程python关于文件读取read里面的参数解释

python读取文件的一般流程python关于文件读取read里面的参数解释

发布时间:2026-07-21阅读(1)

导读本文详细说明文件读取时,read()中参数的解释,可直接滑到文尾看总结.f.read()读取文件的整个内容,返回的是字符串如果一次性读取比如10G的文件,内....

本文详细说明文件读取时,read()中参数的解释,可直接滑到文尾看总结.

f.read()读取文件的整个内容,返回的是字符串

如果一次性读取比如10G的文件,内存就直接爆了,所以需要限制单次读取的大小.

read()可接收size参数,在官方文档提示中

官方文档提示的size参数

size参数是整数型,如果不设置.默认f,read()默认读取字节数-1

也就是说在文件管理器中,显示为字节数量为x,那么默认size的值为x-1

文件管理中的文件属性,红框中的值减1就是size值

-----------------------

案例一:

读取下面这个文件的内容

箭头所指就是文件的末尾

代码及其运行结果如下:

265997字节内容全部读取到并输出了

-----------------------

案例二:

依旧是读取上面那个265 997 字节大小的文件

代码及其运行结果如下:

读取1024 * 87 100 输出的内容

从图中可以看到:

实际是265,997 字节(约为259k)大小的文件,

只读取1024 * 87 100字节(约87k)就输出了所有的内容 !

不是说好的size值多大就读取多少文件内容吗?怎么设置比size小的多的值也读取了全部的文件内容?且看案例三:

-----------------------

案例三:代码及其运行结果

代码及其结果

这次读取的内容的大小为 整个内容的字符串长度,依旧成功输出了几乎(少4个字)全部的内容.

到这应该能明白了,

utf-8的编码的文本中,一个汉字占三个字节,一个英文字母占一个字节.

又由于在文本文件读取模式,size的计数是以Unicode字符的个数计数的,

也就是说列举的三个案例size的计数不是字节,而是字符.

-----------------------

绕了这么多弯子,总结.

读取文件限制最大读取大小时,要注意

在文本文件读取模式,size的计数是以Unicode字符的个数计数的,

在二进制文件读取模式下,size计数是以字节为单位计数。

TAGS标签:  python  读取  文件  一般  流程  python读取文件

Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图