在测试任务过程中都或多或少遇到自己处理文本文件的情况。

举个栗子:

  1. 客户端测试从异常日志中收集有用信息。

  2. 后端测试需要创建各种规则的压力的词表。

  3. ...

这里给大家分享一个使用python脚本处理文本的一些小技巧,分三步

  1. 学会创建文本文件。

  2. 学会读取已有的文本文件。

  3. 学会处理读取文件后的内容

创建文本文件

脚本创建文件和人工创建步骤一样,打开新文件,写入内容,保存并关闭文件

Case1:创建一个文件名为num.txt,内容是1~100数字分别每行一个

Code1:

#coding:utf-8

知识要点:

1.首行coding声明字符编码

根据涉及到的字符可以是gbk、utf8、cp936等等

2.open函数

包含两个参数,第一个参数为文件名。

第二个参数为模式,模式中常用的有只读“r”、写“w”、追加“a”。

r:只读模式常用于使用文本中内容,但不需要编辑内容时使用。

w:写模式常用于新增或编辑内容时使用。

a:追加模式跟写模式类似,不同点在于对同一文件追加模式会在文件内容尾部,续写,而写模式会清空内容重新写。

3.write和close函数

write传入的字符串内容即可。

close打开文件后一定要记得关闭保存。

读取已有的文本文件

Case2:读取文件(如图)内容,并打印。

Code2:

输出:

知识要点:

1.readline函数

每次读取一行,返回字符串。

2.read函数

读取整个文件,返回字符串。

3.readlines函数

读取整个文件,返回数组(数组的每个元素为每一行内容)。

处理读取文件后的内容

Case3:读取文件(如图)中内容cost的值。

Code3:

输出:

知识要点:

Split()函数

Step1:用字符串“cost=”切片原内容后的数组。

['[Sogou-Observer,', '29,ret=1,reqtype=dzz_activityperson,LocalQuery=0,PipeLine_Enter_LocalQueryTaskDZZ=1,Cost_Local=8,Reply=22,PipeLine_Enter_ReplyTask=29,parity=dzz_activityperson0000013CD91D0B011830401141DB4,id=web,Owner=OP]\n']

Step2:用step1第二个元素(cost=之后的内容),使用“,”切片获取数组

['29', 'ret=1','reqtype=dzz_activityperson', 'LocalQuery=0','PipeLine_Enter_LocalQueryTaskDZZ=1', 'Cost_Local=8', 'Reply=22','PipeLine_Enter_ReplyTask=29', 'parity=dzz_activityperson0000013CD91D0B011830401141DB4', 'id=web', 'Owner=OP]\n']

Step3:用step2第一个元素,即cost值作为结果。

29

python处理文本文件的更多相关文章

  1. Python中文本文件读写操作的编码问题

    Python中文本文件读写的编码问题 编码(encode): 我们输入的任何字符想要以文件(如.txt)的形式保存在计算机的硬盘上, 必须先经按照一定的规则编成计算机认识的二进制后,才能存在电脑硬盘上 ...

  2. python读取文本文件

    1. 读取文本文件 代码: f = open('test.txt', 'r') print f.read() f.seek(0) print f.read(14) f.seek(0) print f. ...

  3. python 读写文本文件

    本人最近新学python ,用到文本文件的读取,经过一番研究,从网上查找资料,经过测试,总结了一下读取文本文件的方法. 1.在读取文本文件的时无非有两种方法: a.f=open('filename', ...

  4. Python 批处理文本文件、进行查找

    去年换了一部手机,老手机终于光荣退休了,但是里面的便签里还存有很多文字记录,这个手机还不能备份到云,只能将每个便签保留为一个个的文本文件,我想要把所有的文本文件归到一个文本文件中,手动操作太麻烦了,刚 ...

  5. python 实现文本文件中的数字按序排序(位操作,低内存占用)

    文本文件内容   ./txt 3241155299893344 处理代码: import sys a = bytearray(b'') for i in range(100): a.append(or ...

  6. python读取文本文件数据

    本文要点刚要: (一)读文本文件格式的数据函数:read_csv,read_table 1.读不同分隔符的文本文件,用参数sep 2.读无字段名(表头)的文本文件 ,用参数names 3.为文本文件制 ...

  7. python 写文本文件出现乱码

    最近工作中想完善一下监控日志,同事说客户突然说我们最近几天推送的数据只有几家,赶紧看预警,应推4700多家,实推3400多家,用户可能是看错了,但我记得当时项目验收上线时,这个来源的推送数据肯定是可以 ...

  8. python 查询文本文件的层次

    I/O系统有一系列的层次构建而成 下面是操作一个文本文件的例子来查看这种层次 >>> f = open('sample.txt','w') >>> f <_i ...

  9. python解析文本文件演示样例

    目的:查找文本中还有Sum/Avg的行中低三个竖线后第一个浮点数 思路:先使用python读取文本中一行,然后切割字符串.查找含有Sum/Avgkeyword的行.取出想要的结果 文本局部: .... ...

随机推荐

  1. UBoot启动代码第一阶段流程

    http://blog.csdn.net/xautfengzi/article/details/7470134 前段时间了看了UBoot的源码,放了一段时间之后忘得差不多了.现做一些注释,方便以后温习 ...

  2. mysql status

    要查看MySQL运行状态,要优化MySQL运行效率都少不了要运行show status查看各种状态,下面是参考官方文档及网上资料整理出来的中文详细解释: 状态名 作用域 详细解释 Aborted_cl ...

  3. C#中通过Coded UI Test Web Page初体验(图文并茂,去繁就简!亲测通过哦~)

    今天首次按照网上的步骤进行Coded UI测试,终于测试通过了,我这次进行的自动化测试是:打开浏览器,输入www.baidu.com,然后输入lty,然后点击页面中第一条数据的左侧位置(为了能获取到T ...

  4. JavaScript高级 面向对象(6)--值类型与引用类型的存储特征

    说明(2017.3.31): 1. 画图: var num = 123; var num2 = num; 值类型赋值的存储特点:将变量num内的数据全部拷贝一份,存储给新的变量num2,内存中有2个数 ...

  5. JS自动爆炸案例

    学习到了: setTimeout函数的灵活运用. 案例实现讲解: 1.先定义一个全局的变量,赋值为null. 2.然后使用timeout调用bang函数,以达到自动自动调用函数的功能. 3.bang函 ...

  6. Maven学习之(三)Maven插件创建web项目

    这里来记录一下用eclipse 创建maven 的web项目. 添加jar依赖. <project xmlns="http://maven.apache.org/POM/4.0.0&q ...

  7. 【WPF】当 ItemsSource 正在使用时操作无效。改用 ItemsControl.ItemsSource 访问和修改元素

    问题: 中文版报错:Additional information: 当 ItemsSource 正在使用时操作无效.改用 ItemsControl.ItemsSource 访问和修改元素. 英文版报错 ...

  8. elasticsearch安装与使用(6)-- Logstash安装与配置

    由于elasticsearch的search guard 不支持 elasticsearch的jdbc,所以如果安装了search guard认证插件之后,基本上jdbc就废了,所以我们需要用到log ...

  9. 使用RAID与LVM磁盘阵列技术。

    7.2 LVM逻辑卷管理器 前面学习的硬盘设备管理技术虽然能够有效地提高硬盘设备的读写速度以及数据的安全性,但是在硬盘分好区或者部署为RAID磁盘阵列之后,再想修改硬盘分区大小就不容易了.换句话说,当 ...

  10. redis4安装

    第一步官网下载 https://redis.io/ rz 上传或者直接wget   http://download.redis.io/releases/redis-4.0.2.tar.gz 2.将其下 ...