一、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)
执行结果:

总结
- .read() 每次读取整个文件,它通常将读取到底文件内容放到一个字符串变量中,也就是说 .read() 生成文件内容是一个字符串类型。
- .readline()每只读取文件的一行,通常也是读取到的一行内容放到一个字符串变量中,返回str类型。
- .readlines()每次按行读取整个文件内容,将读取到的内容放到一个列表中,返回list类型。
到此这篇关于python面试题之read、readline和readlines区别的文章就介绍到这了,更多相关python read、readline和readlines区别内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!