Python考试题--第51道题干--read()、readline()、readlines()3种方法读取数据的区别--2022年04月06日
原创目录
3、readlines()方法,读取每一行,并将每一行作为元素返回给列表:
1.三种方式的定义差异:
1、read() 不指定参数,读取文件的所有内容;指定参数n,读取前n个字符。
2、readline() 读取指针当前行的内容,而不指定参数;n,读取前n字符,则至多读取当前行的所有内容。
3、readlines() 不指定参数,什么都读,只以列表的形式;n,读取的字符总数超过n行中的所有内容。
2.示例代码描述了这三种方法的区别:
注意:使用了以下代码。readme.txt文件,您可以编写任何一个TXT文件就足够了。这是我的
hello world!
I love you.
How are you?
0,如何打开文件
# 打开文件
f = open(D:python_workinterviewmianshi100\readme.txt, r, encoding=utf-8)
print(type(f))
f.close()
# 返回IO文件的格式
#
# 使用打开文件功能open(),我添加参数encoding=utf-8,
# 否则,将报告错误:gbk codec cant decode byte 0x8c in position 20: illegal multibyte sequence
# 要打开文件,您需要关闭该文件。在读取文件内容后关闭该文件。
1、read()方法,则读取文件的全部内容:
# read 您可以读取文件的全部内容。
f = open(D:python_workinterviewmianshi100\readme.txt, r, encoding=utf-8)
print(f.read()) # 读取文件的全部内容
# print(f.read(2)) # 如果指定了该参数n,将在之前阅读n个字符
f.seek(6) # 移动指针n的位置
print(f.read(5))# 读取内容从指针的位置开始。n个字符
f.close()
执行结果:

2、readline()方法,则读取当前行的内容:
f = open(D:python_workinterviewmianshi100\readme.txt, r, encoding=utf-8)
print(f.readline()) # 读取当前行的内容
print(f.readline(4)) # 指定参数n,读第一行。n个字符,
print(f.readline(20)) # 如果指定n超过第一行的字符长度,将只读取当前行的内容。
f.close()
# 结果如下,每个测试都需要单独测试,因为每次测试都会移动指针。
# hello world!
# hell
# hello world!
3、readlines()方法,读取每一行,并将每一行作为元素返回给列表:
f = open(D:python_workinterviewmianshi100\readme.txt, r, encoding=utf-8)
print(f.readlines())
print(f.readlines(3)) # 如果指定了该参数n,n字符数不超过当前行的字符数,因此只显示当前行的内容。
print(f.readlines(13)) # 如果指定了该参数n,n如果字符数超过当前行的字符数,则显示下一行的数据。
f.close()
# 结果如下,每个测试都需要单独测试,因为每次测试都会移动指针。
# [hello world!
, I love you. , How are you?]
[hello world!
]
[hello world!
, I love you. ]
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除
itfan123


