python面试题之read、readline、readlines的区别
一、read
可以一次性读取文件中所有内容
1.txt文件内容
🔥语法:
file.read([size])
例1:file.read():会将所有的内容读取出来
with open('1.txt','r') as file:
content=file.read()
print(content)
执行结果:
file.read():是从文件的头部开始读取的。如果想要读取部分内容,可以先使用文件对象的seek()方法将文件的指针移动到新的位置,然后再应用read(size)方法读取。
seek()方法的基本语法格式:
file.seek(offset[,whence])
file:表锁已经打开的文件
offset:用于指定移动的字符个数
whence:用于指定从什么位置开始计算,值为0表示从文件头开始计算,1表示从当前位置开始计算,2表示从文件末尾开始计算,默认为0
例2:读取部分内容
with open('1.txt','r') as file:
file.seek(22)
content=file.read()
print(content)
执行结果:
例3:file.read(size):表示读取size个字符
with open('1.txt','r') as file:
file.seek(22)
content=file.read(10)
print(content)
执行结果:
一、readline
每次读取一行数据
🔥格式:
file.readline()
file:打开的文件对象
例4:file.readline()读取一条数据
with open('1.txt','r') as file:
content=file.readline()
print(content)
执行结果:
例5:通过循环将文件中的数据全部读取出来
with open('1.txt','r') as file:
number=0
while True:
number+=1
content=file.readline()
if content=='':
break
print(number,content,end='\n')
执行结果:
三、readlines
读取全部行,返回的是一个字符串列表,每个元素为文件的一行内容
🔥语法:
file.readlines()
file:打开的文件
例6:读取全部行
with open('1.txt','r') as file:
content=file.readlines()
print(content)
执行结果:
例7:将列表元素逐行输出
with open('1.txt','r') as file:
content=file.readlines()
for index,item in enumerate(content):
print(index,item)
执行结果:
来源:YZL40514131