Python文件处理

2019-01-11  本文已影响0人  CTLers丶Vk
def wr(he,me,you,number):

#自定义文件名
    file_name_he = 'he_' + str(number) + '.txt'
    file_name_me = 'me_' + str(number) + '.txt'
    file_name_you = 'you_' + str(number) + '.txt'

#打开文件、若文件不存在则创建后打开、赋予读写权限
    file_he = open(file_name_he,'w')
    file_me = open(file_name_me,'w')
    file_you = open(file_name_you,'w')

#对应内容写入文件
    file_he.writelines(he)
    file_me.writelines(me)
    file_you.writelines(you)

#写入完成关闭文件
    file_he.close()
    file_me.close()
    file_you.close()

def st(file_name,va,one,two):

#打开原始文件 
    f = open(file_name)

#初始化列表用于存放数据
    he = []
    me = []
    you = []
    number = 1

#一行一行遍历文件内容
    for line in f:

#没检测到分割线就将内容进行切割
        if line[:6] != '------':

#以:为分界、左边的删去、右边的保存
            (who,what) = line.split(va,1)

#切割后将内容写入相应列表
            if who == one:
                he.append(what)
            elif who == two:
                me.append(what)
            else:
                you.append(what)
#检测到分割线就将列表内容写入文件
        else:
            wr(he,me,you,number)

#写入完成后、初始化各列表准备下一轮写入
            he = []
            me = []
            you = []

#每次保存后序号自加1、用于区分文件生成顺序
            number += 1

#关闭文件
    f.close()

#执行函数、打开a.txt文件
st('a.txt',':','他说','我说')
print('执行成功、请在源文件目录查看')
上一篇下一篇

猜你喜欢

热点阅读