python分割一个文本为多个文本的方法

时间:2021-05-22

本文实例为大家分享了python分割一个文本为多个文本,供大家参考,具体内容如下

# load file# for each row## if match## output def main(): file_source = './reading_questions.txt' #target_dir = '' file_in = open(file_source,'r') template_str = 'TARGET' outfilename = './head.txt' output_content = '' while 1: line = file_in.readline() if not line: break if line.find(template_str) != -1: write_file(outfilename,output_content) outfilename = './'+line+'.txt' # output file tile output_content = '' else: output_content += line # append write_file(outfilename,output_content) #for the last file # close file stream file_in.close() def write_file(filename, filecontent): file_out = open(filename,'w') # create file file_out.write(filename) file_out.write(filecontent) file_out.close() main()

cygwin+python3下报错:UnicodeDecodeError: 'gb2312' codec can't decode byte 0xac in position 25: illegal multibyte sequence

修改打开文件参数

file_in = open(file_source,'r',encoding='UTF-8')

修改为如下

# load file# for each row## if match## output def main(): print ('hhh') file_source = 'listening_questions.txt' #target_dir = '' file_in = open(file_source,'r',encoding='UTF-8') template_str = 'ZTPO' outfilename = 'head' #first file before match target output_content = '' while 1: line = file_in.readline() if not line: break if line.find(template_str) != -1: write_file(outfilename,output_content) outfilename = line.strip('\n') output_content = '' # clear content of output file else: output_content += line # append content write_file(outfilename,output_content) #for the last file # close file stream file_in.close() def write_file(filename, filecontent): outfilename = './'+filename+'.txt' # output file tile file_out = open(outfilename,'w',encoding='UTF-8') # create file file_out.write(filename) file_out.write(filecontent) file_out.close() main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章