Python3读取文件常用方法实例分析
本文实例讲述了Python3读取文件常用方法。分享给大家供大家参考。具体如下:
'''''
CreatedonDec17,2012
读取文件
@author:liury_lab
'''
#最方便的方法是一次性读取文件中的所有内容放到一个大字符串中:
all_the_text=open('d:/text.txt').read()
print(all_the_text)
all_the_data=open('d:/data.txt','rb').read()
print(all_the_data)
#更规范的方法
file_object=open('d:/text.txt')
try:
all_the_text=file_object.read()
print(all_the_text)
finally:
file_object.close()
#下面的方法每行后面有‘\n'
file_object=open('d:/text.txt')
try:
all_the_text=file_object.readlines()
print(all_the_text)
finally:
file_object.close()
#三句都可将末尾的'\n'去掉
file_object=open('d:/text.txt')
try:
#all_the_text=file_object.read().splitlines()
#all_the_text=file_object.read().split('\n')
all_the_text=[L.rstrip('\n')forLinfile_object]
print(all_the_text)
finally:
file_object.close()
#逐行读
file_object=open('d:/text.txt')
try:
forlineinfile_object:
print(line,end='')
finally:
file_object.close()
#每次读取文件的一部分
defread_file_by_chunks(file_name,chunk_size=100):
file_object=open(file_name,'rb')
whileTrue:
chunk=file_object.read(chunk_size)
ifnotchunk:
break
yieldchunk
file_object.close()
forchunkinread_file_by_chunks('d:/data.txt',4):
print(chunk)
输出如下:
hellopython helloworld b'ABCDEFG\r\nHELLO\r\nhello' hellopython helloworld ['hellopython\n','helloworld'] ['hellopython','helloworld'] hellopython helloworldb'ABCD' b'EFG\r' b'\nHEL' b'LO\r\n' b'hell' b'o'
希望本文所述对大家的Python程序设计有所帮助。