read()、readline()、readlines()区别
读取文件的三个方法:read()
、readline()
、readlines()
。均可接受一个方法参数用以限制每次读取的数据量,通常使用不多
1.read()
-
优点:读取整个文件,将文件内容放到一个字符串变量中。
-
劣势:如果文件非常大,容易导致内存泄漏,尤其是大于内存时,无法使用read()方法。
-
总结:不适用于读取大文件
2.readline()
-
优点:readline()方法每次读取一行;返回的是一个字符串对象,保存当前行的内存,不占用内存
-
缺点:相比readlines较慢
file_name = "cc.txt"
with open(file_name, encoding="utf-8") as can:
# 读取文件
print(can.readline()) #读取一行
print(can.readline())
执行结果:
3.readlines()
特点:一行一行读取内容,一次性读取整个文件;自动将文件内容分析成一个行的列表
file_name = "cc.txt"
with open(file_name, encoding="utf-8") as can:
c = can.readlines()
print(c)
print(c[0])
执行结果:
- readlines()读取所有行然后把它们作为一个字符串列表返回;
- 返回的每一行内容包含换行符