029文件:一个任务

一篇文章按照======分割成三段

f = open("C:\\Users\\Administrator\\Desktop\\新建文本文档.txt")

boy = []
girl = []
count = 1

for each_line in f:
    if each_line[:6] != "======":
        (role,line_spoken) = each_line.split(":",1)#按照冒号进行分割
        if role == "小甲鱼":
            boy.append(line_spoken)
        if role == "客服":
            girl.append(line_spoken)
    else:
        file_name_boy = "boy_" + str(count) + ".txt"
        file_name_girl = "girl_" + str(count) + ".txt"#文件分别保存

        boy_file = open(file_name_boy,"w")
        girl_file = open(file_name_girl,"w")   #打开文件     
#写入文件
        boy_file.writelines(boy)
        girl_file.writelines(girl)
#关闭文件
        boy_file.close()
        girl_file.close()
#初始化
        boy = []
        girl = []
        count += 1
        
file_name_boy = "boy_" + str(count) + ".txt"
file_name_girl = "girl_" + str(count) + ".txt"#文件分别保存

boy_file = open(file_name_boy,"w")
girl_file = open(file_name_girl,"w")   #打开文件     
#写入文件
boy_file.writelines(boy)
girl_file.writelines(girl)
#关闭文件
boy_file.close()
girl_file.close()        
#关闭文件
        
f.close()

简化包装后

def save_file(boy,girl,count):
    file_name_boy = "boy_" + str(count) + ".txt"
    file_name_girl = "girl_" + str(count) + ".txt"#文件分别保存

    boy_file = open(file_name_boy,"w")
    girl_file = open(file_name_girl,"w")   #打开文件     
#写入文件
    boy_file.writelines(boy)
    girl_file.writelines(girl)
#关闭文件
    boy_file.close()
    girl_file.close()
def split_file(file_name):    
    f = open("C:\\Users\\Administrator\\Desktop\\新建文本文档.txt")

    boy = []
    girl = []
    count = 1

    for each_line in f:
        if each_line[:6] != "======":
            (role,line_spoken) = each_line.split(":",1)#按照冒号进行分割
            if role == "小甲鱼":
                boy.append(line_spoken)
            if role == "客服":
                girl.append(line_spoken)
        else:
            save_file(boy,girl,count)
    #初始化
            boy = []
            girl = []
            count += 1
            
    save_file(boy,girl,count)        

    #关闭文件     
    f.close()
    
split_file("C:\\Users\\Administrator\\Desktop\\新建文本文档.txt")

发布了42 篇原创文章 · 获赞 0 · 访问量 282

猜你喜欢

转载自blog.csdn.net/qq_43169516/article/details/103817386