zoukankan      html  css  js  c++  java
  • Python open 读写小栗子

    1、样本内容 A.txt

    2、上代码:

    f=open(r'E:A.txt','r')
    
    boyA=[]
    boyB=[]
    count =1
    
    for each_line in f:
        if each_line[:6]!='======':
            (role,line_spoken)=each_line.split(':',1)
            print((role,line_spoken))
            if role == 'A':
                boyA.append(line_spoken)
            if role =='B':
                boyB.append(line_spoken)
        else:
            file_name_boyA = r'E:oyA_'+str(count)+'.txt'
            file_name_boyB = r'E:oyB_' + str(count) + '.txt'
    
            boyA_file = open(file_name_boyA,'w')
            boyB_file = open(file_name_boyB, 'w')
    
            boyA_file.writelines(boyA)
            boyB_file.writelines(boyB)
    
            boyA_file.close()
            boyB_file.close()
    
            boyA = []
            boyB = []
            count += 1
    
    file_name_boyA = r'E:oyA_' + str(count) + '.txt'
    file_name_boyB = r'E:oyB_' + str(count) + '.txt'
    
    boyA_file = open(file_name_boyA,'w')
    boyB_file = open(file_name_boyB, 'w')
    
    boyA_file.writelines(boyA)
    boyB_file.writelines(boyB)
    
    boyA_file.close()
    boyB_file.close()
    
    f.close()

    3、上结果:

    4、代码优化一下

    #第二个函数
    def save_file(boyA,boyB,count):
        file_name_boyA = r'E:oyA_' + str(count) + '.txt'
        file_name_boyB = r'E:oyB_' + str(count) + '.txt'
    
        boyA_file = open(file_name_boyA, 'w')
        boyB_file = open(file_name_boyB, 'w')
    
        boyA_file.writelines(boyA)
        boyB_file.writelines(boyB)
    
        boyA_file.close()
        boyB_file.close()
    
    #第一个函数
    def split_file(file_name):
        f=open(file_name,'r')
    
        boyA = []
        boyB = []
        count = 1
        for each_line in f:
            if each_line[:6]!='======':
                (role,line_spoken)=each_line.split(':',1)
                print((role,line_spoken))
                if role == 'A':
                    boyA.append(line_spoken)
                if role =='B':
                    boyB.append(line_spoken)
            else:
                save_file(boyA, boyB, count)
    
                boyA = []
                boyB = []
                count += 1
    
        save_file(boyA,boyB,count)
    
        f.close()
    
    # 调用
    split_file(r'E:A.txt')
  • 相关阅读:
    java project 和 java web project 获取路径问题
    java.lang.UnsupportedClassVersionError: *** : Unsupported major.minor version 51.0
    Hibernate Annotation (Hibernate 注解)
    远程访问(post 传参数) 以及IOUtils复制文件
    使用jdk中keytool生成证书
    Chrome 的滚动条修改.
    https原理及tomcat配置https方法
    HttpClient 访问 https 出现peer can't
    Dom4j解析xml
    Tomcat Server 配置
  • 原文地址:https://www.cnblogs.com/youmingkuang/p/7454123.html
Copyright © 2011-2022 走看看