Python open 读写小栗子
1、样本内容 A.txt

2、上代码:
f=open(r'E:\A.txt','r') boyA=[]
boyB=[]
count = for each_line in f:
if each_line[:]!='======':
(role,line_spoken)=each_line.split(':',)
print((role,line_spoken))
if role == 'A':
boyA.append(line_spoken)
if role =='B':
boyB.append(line_spoken)
else:
file_name_boyA = r'E:\boyA_'+str(count)+'.txt'
file_name_boyB = r'E:\boyB_' + 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 += file_name_boyA = r'E:\boyA_' + str(count) + '.txt'
file_name_boyB = r'E:\boyB_' + 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:\boyA_' + str(count) + '.txt'
file_name_boyB = r'E:\boyB_' + 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 =
for each_line in f:
if each_line[:]!='======':
(role,line_spoken)=each_line.split(':',)
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 += save_file(boyA,boyB,count) f.close() # 调用
split_file(r'E:\A.txt')
Python open 读写小栗子的更多相关文章
- python入门之小栗子
1 点球小游戏: from random import choice score=[0,0]direction=['left','center','right'] def kick(): print ...
- python 文件读写操作(24)
以前的代码都是直接将数据输出到控制台,实际上我们也可以通过读/写文件的方式读取/输出到磁盘文件中,文件读写简称I/O操作.文件I/O操作一共分为四部分:打开(open)/读取(read)/写入(wri ...
- Javaweb统计在线人数的小栗子
最近在学习Javaweb相关的内容(不黑不吹之前对web开发零基础),下面通过一个统计在线人数的小栗子讲讲Servlet监听器吧 开发环境 eclipse tomcat 7 先说说这个小栗子的构思: ...
- python random模块 - 小驹的专栏 - 博客频道 - CSDN.NET
python random模块 - 小驹的专栏 - 博客频道 - CSDN.NET python random模块 分类: python 2011-11-15 15:31 6037人阅读 评论(2) ...
- Python 3 读写文件的简单方法!
Python 3 读写文件的简单方法! a = open('test.txt','w') 这行代码创建了一个名为test的文本文档,模式是写入(模式分为三种,w代表写入,r代表阅读,a代表在尾行添加) ...
- 关于理解python类的小题
今天看了python部落翻译的一篇<一道python类的小题>文章,感觉挺有启发性,记录下来: print('A') class Person(object): print('B') de ...
- cookie小栗子-实现简单的身份验证
关于Cookie Cookie是一种能够让网站Web服务器把少量数据储存到客户端的硬盘或内存里,或是从客户端的硬盘里读取数据的一种技术. 用来保存客户浏览器请求服务器页面的请求信息,可以在HTTP返回 ...
- SpringBoot+Shiro+Redis共享Session入门小栗子
在单机版的Springboot+Shiro的基础上,这次实现共享Session. 这里没有自己写RedisManager.SessionDAO.用的 crazycake 写的开源插件 pom.xml ...
- SpringBoot+Shiro入门小栗子
写一个不花里胡哨的纯粹的Springboot+Shiro的入门小栗子 效果如图: 首页:有登录注册 先注册一个,然后登陆 登录,成功自动跳转到home页 home页:通过认证之后才可以进 代码部分: ...
随机推荐
- javascript判断对象是否为domElement
我们在写js代码时有时需要判断某个对象是不是DOM对象,然后再进行后续的操作,这里我给出一种兼容各大浏览器,同时又算是比较稳妥的一种方法. 要判断一个对象是否DOM对象,首先想到的无非就是它是否具有D ...
- linux 安装python3 date更新
http://linux.51yip.com/ ntpdate -u ntp.aliyun.com 更新时间 centos 默认是有 python的,是2.7.5的 重启网络的命令 -- sys ...
- ESXi 嵌套KVM虚拟化 配置
VMware ESXi5.x默认不支持嵌套虚拟化,需要修改相关配置才能支持 1.ESXi5.1主机开通ssh,修改VMware ESXi配置文件使之嵌套虚拟化. 在配置文件后面加入如下配置:vhv ...
- SharePoint 解决管理员密码修改后各种问题的来袭
问题描述:本人用的是Win10自带虚拟机Hyper-V.Windows Service 2012R2.SQL2014和SharePoint2016,由于有一段时间没有登录虚拟机,在此登录的时候提示密码 ...
- Python+OpenCV图像处理(三)—— Numpy数组操作图片
一.改变图片每个像素点每个通道的灰度值 (一) 代码如下: #遍历访问图片每个像素点,并修改相应的RGB import cv2 as cv def access_pixels(image): prin ...
- 三张图搞懂JavaScript的原型对象与原型链 / js继承,各种继承的优缺点(原型链继承,组合继承,寄生组合继承)
摘自:https://www.cnblogs.com/shuiyi/p/5305435.html 对于新人来说,JavaScript的原型是一个很让人头疼的事情,一来prototype容易与__pro ...
- Docker学习笔记之使用 Docker Hub 中的镜像
0x00 概述 自己编写 Dockerfile 能够很好的实现我们想要的程序运行环境,不过如果装有我们想要环境的镜像已经由热心的开发者构建好并共享在 Docker Hub 上,直接使用它们就会远比自己 ...
- Golang的数组初始化方式及for-range遍历
package main import ( "fmt" ) func main() { ]], , } //定义并初始化长度为3的数组 fmt.Println(arr1) //[1 ...
- Elasticsearch.Net使用(一)【入门篇】
http://blog.csdn.net/wulex/article/details/52138564 加数据 //在调用下面的index方法的时候,如果没有指定使用哪个index,ElasticSe ...
- 01: docker 基本使用
1.1 docker基础 1.docker与虚拟机比较 2.docker版本 1. 社区版(Community Edition, CE) 2. 企业版(Enterprise Edition, EE) ...