python中read()/readline()/readlines()三者间的区别和用法

python的open模块是我们开发中常用到的读取文件的模块,我们今天来看看read()、readline()、readlines()三个方法有何不同

1.read()方法,这个方法是可以传一个size参数进去,方法从文件当前位置起读取size个字节,若无参数size,则表示读取至文件结束为止,它范围为字符串

with open('test.log', 'r', encoding='utf-8') as f:
    line = f.read()
    print(line)
    print(type(line))

打印结果是

yang.su
shevechco
merci
<class 'str'>

2.readline()方法,这个方法我们可以从命令上猜出这个方法是逐行读取文件,这样的话消耗内存较少,他也是返回一个字符串对象

with open('test.log', 'r', encoding='utf-8') as f:
    while True:
        line = f.readline()
        line = line.strip('\n')
        if line:
            print(line)
        else:
            break

打印结果

yang.su
shevechco
merci

3.readlines()方法,这个方法是一次读取所有文件存在一个list列表中,读取大文件比较消耗内存,但是文件小的话这种方式是最快的

with open('test.log', 'r', encoding='utf-8') as f:
    line = f.readlines()
    print(type(line))
    for lines in line:
        print(lines.strip("\n"))

打印结果

<class 'list'>
yang.su
shevechco
merci


内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/184.html