read(),readline() 和 readlines() 比较
read(),readline() 和 readlines() 比较
共同点:均可接受一个变量用以限制每次读取的数据量,但通常不使用
区别:
read() 【即 fileObject().read( [size] ) 】
特点:读取整个文件,将文件内容放在一个字符串变量中。
劣势:如果文件非常大,尤其大于内存时,无法使用read()方法。
with open(r'../learn_file/file_to_read.txt', encoding='utf-8', mode='r') as fb: content = fb.read() print(type(content)) print(content) # 输出: # <class 'str'> # line 1: Hello, Mike. # line 2: Nice to meet you. I'm Nick. # line 3: Welcome to Shenzhen. # line 4: Thx, it is really a beautiful city. I enjoy my time here. # line 5: It is. Shall we go for some coffee this afternoon. # line 6:Sure. And I want to discuss some details about the project we're going to work for
readline() 【即 fileObject.readline( [size] ),[size]表示可选参数。】
特点:从文件中一行一行地整行读取数据,如果指定了一个非负数的参数,则返回指定大小的字节数。
缺点:比readlines()慢得多
with open(r'../learn_file/file_to_read.txt', encoding='UTF-8', mode='r+') as fb: while True: content = fb.readline().replace('\n', '') # content = fb.readlines() # if not content: # break if content: print(type(content), content) else: break # print(type(content)) # print(type(content), content) print(fb.name) # 输出: # <class 'str'> line 1: Hello, Mike. # <class 'str'> line 2: Nice to meet you. I'm Nick. # <class 'str'> line 3: Welcome to Shenzhen. # <class 'str'> line 4: Thx, it is really a beautiful city. I enjoy my time here. # <class 'str'> line 5: It is. Shall we go for some coffee this afternoon. # <class 'str'> line 6:Sure. And I want to discuss some details about the project we're going to work for. # ../learn_file/file_to_read.txt
readlines() 【即 fileObject.readlines( [sizeint] ),[sizeint] 表示可选参数】
特点:从文件一次读取所有行并返回列表,若给定sizeint > 0,返回总和大约为sizeint字节的行
with open(r'../learn_file/file_to_read.txt', encoding='utf-8', mode='r') as fb: content = fb.readlines() print(type(content)) for line in content: print(type(line), line.replace('\n', '')) # 输出 # <class 'list'> # <class 'str'> line 1: Hello, Mike. # <class 'str'> line 2: Nice to meet you. I'm Nick. # <class 'str'> line 3: Welcome to Shenzhen. # <class 'str'> line 4: Thx, it is really a beautiful city. I enjoy my time here. # <class 'str'> line 5: It is. Shall we go for some coffee this afternoon. # <class 'str'> line 6:Sure. And I want to discuss some details about the project we're going to work for.