|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- import pickle
- 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, 'wb') # 记得一定要加 b 吖
- girl_file = open(file_name_girl, 'wb') # 记得一定要加 b 吖
- pickle.dump(boy, boy_file)
- pickle.dump(girl, girl_file)
- boy_file.close()
- girl_file.close()
- def split_file(file_name):
- count = 1
- boy = []
- girl = []
- f = open(file_name)
- 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('record.txt')
复制代码
为什么最后还要在调用一次save_file(boy, girl, count)
因为
- if each_line[:6] != '======':
- (role, line_spoken) = each_line.split(':', 1)
- if role == '小甲鱼':
- boy.append(line_spoken)
- if role == '小客服':
- girl.append(line_spoken)
复制代码
我们每次都是以‘=======’作为分界,执行else里面的保存指令,而最后一段的下面没有等号,就不会执行
- else:
- save_file(boy, girl, count)
复制代码
所以要在最后再写一个 save_file
|
|