我们要实现一个文件读写操作的小程序

首先我们有一个文件

我们要以"============"为界限,每一个角色分割成一个独立的txt文件,按照分割线走的话是分成

xiaoNa_1.txt xiaoBing_1.txt

xiaoNa_2.txt xiaoBing_2.txt

这样格式的四个文件

下面上代码:

#定义一个保存文件的函数
def save_file(xiaoNa,xiaoBing,count):
file_name_xiaoBing = 'xiaoBing_'+str(count)+'.txt' #组织文件名
file_name_xiaoNa = 'xiaoNa_'+str(count)+'.txt' #组织文件名 xiaoBing_file = open(file_name_xiaoBing,'w') #文件写入操作 没有文件创建
xiaoNa_file = open(file_name_xiaoNa,'w') xiaoBing_file.writelines(xiaoBing) #写入内容
xiaoNa_file.writelines(xiaoNa) xiaoBing_file.close()
xiaoNa_file.close()
#定义分割文件的函数
def split_file(file_name):
f = open(file_name) #打开文件 xiaoBing = [] #定义接受小兵会话的数组
xiaoNa = [] #定义接受小娜会话的数组
count = 1 #定义文件数 for each_line in f:
if each_line[:6]!='======':
(role,speakContent) = each_line.split(':',1) #split函数前面一个参数表示分割符号 后面一个表示分割次数
if role == '小兵':
xiaoBing.append(speakContent)
if role == '小娜':
xiaoNa.append(speakContent)
else:
#保存文件
save_file(xiaoNa,xiaoBing,count) #重新初始化一下
xiaoBing = []
xiaoNa = []
count +=1 #因为分割符号“======”在最后一个没有了 所以这里要保存最后一个文件的内容
save_file(xiaoNa,xiaoBing,count)
f.close() #调用函数执行功能
split_file('record.txt')

  最后附上实现效果

python(三)一个文件读写操作的小程序的更多相关文章

  1. Python绘制PDF文件~超简单的小程序

    Python绘制PDF文件 项目简介 这次项目很简单,本次项目课,代码不超过40行,主要是使用 urllib和reportlab模块,来生成一个pdf文件. reportlab官方文档 http:// ...

  2. python学习之文件读写操作

    open函数 在使用文件之前,需要先打开,即使用open函数 如: files=open("文件路径","操作方式") 解释如下: (1.files:为文件对象 ...

  3. python 文件读写操作(24)

    以前的代码都是直接将数据输出到控制台,实际上我们也可以通过读/写文件的方式读取/输出到磁盘文件中,文件读写简称I/O操作.文件I/O操作一共分为四部分:打开(open)/读取(read)/写入(wri ...

  4. python里文件读写操作

    文件读写操作一种基本操作,但是里面也存在很多需要注意的问题,例如字符编码.内存缓冲.指针位置等等.如果忽视这些问题就会引起很多不必要的麻烦.简单来说,文件的读写分为几个过程: 打开文件,并定义操作文件 ...

  5. Androlid入门之文件系统操作(三)文件读写

         import java.io.*; import android.app.Activity; import android.os.Bundle; import android.view.Vi ...

  6. 【python系统学习17】python中的文件读写

    python中的文件读写 文件读写,是Python代码调用电脑文件的主要功能,能被用于读取和写入文本.音频片段.Excel文档.邮件以及任何保存在电脑上的东西. 可使用python批量的操作本地文件, ...

  7. python学习8 文件的操作

    本文拷贝了on testing 的<python之文件操作:文件的读写>,只做学习之用 python的文件读写通过 一.用open函数 二.对文件读写操作 三.读取文件位置定位 1. op ...

  8. Kotlin入门(27)文件读写操作

    Java的文件处理用到了io库java.io,该库虽然功能强大,但是与文件内容的交互还得通过输入输出流中转,致使文件读写操作颇为繁琐.因此,开发者通常得自己重新封装一个文件存取的工具类,以便在日常开发 ...

  9. Python—对Excel进行读写操作

    学习Python的过程中,我们会遇到Excel的读写问题.通过搜索得知,我们可以使用xlwt module将数据写入Excel表格,使用xlrd module从Excel读取数据.下面介绍如何实现使用 ...

随机推荐

  1. mysql自动备份策略

    目标:每7天做一个完整备份,每天做一份binlog日志,第二周将之前的备份删除并产生新的完整备份和binlog日志,备份要求每天2:00自动完成 mysql 版本:mysql5.5 1.开启binlo ...

  2. poj2299解题报告(归并排序求逆序数)

    POJ 2299,题目链接http://poj.org/problem?id=2299 题意: 给出长度为n的序列,每次只能交换相邻的两个元素,问至少要交换几次才使得该序列为递增序列. 思路: 其实就 ...

  3. 在openshift上创建django应用

    python 3.3 + django 1.7 一.创建新应用 $ rhc app create -a mynewapp -t python-3.3 二.在新建的目录里添加git库 $ cd myne ...

  4. python(6)- hashlib模块

    加密算法: SHA1,SHA224, SHA256, SHA384, SHA512 , MD5 1. md5 import hashlib m = hashlib.md5() m.update(b&q ...

  5. js实现归并排序

    function merge(s_arr, d_arr, start, middle, end){ var s_temp = start; var m_temp = middle+1; var tem ...

  6. 用bash命令得到Windows一个目录下的所有文件并且把结果输入到一个文件

    方式一: 只用如下一条语句就可以了: tree/f>index.txt 放入一个文件中命名为"****.bat" 双击就会在该目录下生成一个index.txt文件,在这个文件 ...

  7. makefile中使用变量

    makefile里的变量就像一个变量,变量的作用主要如下: (1)保存文件名列表. (2)保存编译器的参数. makefile中的变量是用一个字符串在makefile中定义的,这个文本串就是变量的值. ...

  8. hdu 4628 动态规划

    思路:首先就是状态压缩,然后判断哪些状态是回文串.最后就是动态方程:dp[i]=min(dp[i],dp[j]+1).这个方程得前提条件是状态(j-i)为回文串. #include<iostre ...

  9. Html5中的video元素

    最近在做门户的时候遇到要显示企业的视频介绍,需要找到一个在aspx页面播放视频的html,最后找到了是一段HTML5最新的html代码,如下: /// <summary> /// 播放视频 ...

  10. sublime安装 less环境

    工具的选择: mac-codekit simpless->跨平台 winless-windows  less.js下载:http://pan.baidu.com/s/1o60yTZ0   安装L ...