python 读取文件,分类创建
共2版,第二版仅仅分块
给出record.txt
客服:您好,工号001为您服务!
客户:1丽购物吗?
客服:是的,请问有什么可以帮您?
客户:是澳达吗?
客服:是的,请问有什么可以帮您?
客户:那我刚才怎么听到丽赫购物?
客服:那是由于公司业务扩张,原澳琳达售后 部门升级为丽赫购物公司,并增加了更多新的优质商品提供给客户。 订购电话 所有订购程序结束后应与客户确认信息,避免差错。
客服: *先生/小姐你好,最后跟您确认一下信息,您订购的商品是***商品***个(……),赠品是***,总价***元,送货地址***,送货时间***,联系电话***,您看对吗?
客户:是的。
客服:*先生/小姐,请问您还有其他问题需要咨询吗?
客户:没有了。
客服:感谢您的订购,欢迎再次来电!
===========================
客服:您好,工号002为您服务!
客户:2丽购物吗?
客服:是的,请问有什么可以帮您?
客户:是澳达吗?
客服:是的,请问有什么可以帮您?
客户:那我刚才怎么听到丽赫购物?
客服:那是由于公司业务扩张,原澳琳达售后 部门升级为丽赫购物公司,并增加了更多新的优质商品提供给客户。 订购电话 所有订购程序结束后应与客户确认信息,避免差错。
客服: *先生/小姐你好,最后跟您确认一下信息,您订购的商品是***商品***个(……),赠品是***,总价***元,送货地址***,送货时间***,联系电话***,您看对吗?
客户:是的。
客服:*先生/小姐,请问您还有其他问题需要咨询吗?
客户:没有了。
客服:感谢您的订购,欢迎再次来电!
===============================
客服:您好,工号003为您服务!
客户:3丽购物吗?
客服:是的,请问有什么可以帮您?
客户:是澳达吗?
客服:是的,请问有什么可以帮您?
客户:那我刚才怎么听到丽赫购物?
客服:那是由于公司业务扩张,原澳琳达售后 部门升级为丽赫购物公司,并增加了更多新的优质商品提供给客户。 订购电话 所有订购程序结束后应与客户确认信息,避免差错。
客服: *先生/小姐你好,最后跟您确认一下信息,您订购的商品是***商品***个(……),赠品是***,总价***元,送货地址***,送货时间***,联系电话***,您看对吗?
客户:是的。
客服:*先生/小姐,请问您还有其他问题需要咨询吗?
客户:没有了。
客服:感谢您的订购,欢迎再次来电!
文本注意事项:上面的record.txt中的对话,用============分成3部分。(仅仅1,2句话不同)
代码注意事项:用\来转义(文件路径)
其他注释见代码内部
第一版
f=open('D:\\alife\\python\\xiaojiayu\\record.txt','r',encoding='utf-8')
#默认是gb,尽量改成encoding='utf-8'
customer=[]
customerServer=[]
count=1
for each_lines in f:
if each_lines[:4] != '====':
if each_lines[:2]=='客服': #一个子占据一个下标
customer.append(each_lines)
elif each_lines[:2]=='客户':
customerServer.append(each_lines)
else:
file_name_c='客户'+str(count)+'.txt'
file_name_cs='客服'+str(count)+'.txt'
f_customer=open(file_name_c,'w',encoding='utf-8')
f_customerServer=open(file_name_cs,'w',encoding='utf-8')
#
f_customer.writelines(customer)
f_customerServer.writelines(customerServer)
f_customer.close()
f_customerServer.close()
customer=[]
customerServer=[]
count+=1
#就此结束的话没有第3次谈话
#此时2个列表已经填满
file_name_c='客户'+str(count)+'.txt'
file_name_cs='客服'+str(count)+'.txt'
f_customer=open(file_name_c,'w',encoding='utf-8')
f_customerServer=open(file_name_cs,'w',encoding='utf-8')
f_customer.writelines(customer)
f_customerServer.writelines(customerServer)
f_customer.close()
f_customerServer.close()
customer=[]
customerServer=[]
f.close()
## 第2版(函数版本)
```python
def separation (X):
'''填X=.txt的路径
'''
f=open(X,'r',encoding='utf-8')
#默认是gb,尽量改成encoding='utf-8'
customer=[]
customerServer=[]
count=1
for each_lines in f:
if each_lines[:4] != '====':
if each_lines[:2]=='客服': #一个子占据一个下标
customer.append(each_lines)
elif each_lines[:2]=='客户':
customerServer.append(each_lines)
else:
CreatTxt(customer,customerServer,count)
customer=[]
customerServer=[]
count+=1
CreatTxt(customer,customerServer,count)
customer=[]
customerServer=[]
f.close()
#就此结束的话没有第3次谈话
#此时2个列表已经填满
def CreatTxt(customer,customerServer,count):
file_name_c='客户'+str(count)+'.txt'
file_name_cs='客服'+str(count)+'.txt'
f_customer=open(file_name_c,'w',encoding='utf-8')
f_customerServer=open(file_name_cs,'w',encoding='utf-8')
f_customer.writelines(customer)
f_customerServer.writelines(customerServer)
f_customer.close()
f_customerServer.close()
#错误
#customer=[]仅仅是内部的list进行改变
#customerServer=[]
separation ('D:\\alife\\python\\xiaojiayu\\record.txt')
#函数调用