初探接口测试框架--python系列4
点击标题下「蓝色微信名」可快速关注
坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注、转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期待的方向,有更多兴趣的欢迎切磋,我们微信订阅号,联系方式如下:
更多书籍,敬请期待
背景说明
看看接口测试框架的神秘,小怪带领着大家一起开始第4课,希望能看完知识点,自己动手练习,然后和给出的例子代码对比,最后看看作业感悟篇,本期是第4课,对应的作业是第3题,想学的就往下看吧
1作业内容
题目3:读取csv文件的前3列的内容(多行),并把前三列的内容全部写入到第4列中(之间用+分割)

2相关知识点
ppt资料:
原件获取地址:
链接:http://pan.baidu.com/s/1ge6gsVp 密码:iy5z
3参考例子一
代码较长,获取地址:
链接:http://pan.baidu.com/s/1ge6gsVp 密码:iy5z
4作业感悟
这次作业要求读取csv文件的前3列的内容(多行),并把前三列的内容全部写入到第四列中(之间用+分割)。
之前已经解决了读取中文文件名的问题,读取上就照搬之前代码了。
在网上搜索了可以直接修改文件的方法,不需要读取文件保存新文件覆盖原文件,使用fileinput.input参数设置为inplace=1就可以了。
接下来是两个小处理:
1、使用line.strip('\n')去掉读取的行尾的换行符。
2、使用fileinput.isfirstline()判断是否是首行,跳过处理。
字符串处理的部分,我本来是用正则表达式,对整行字符串进行匹配处理,通过后向引用的圆括号,整合了数据后输出。
line = re.sub(r'(\d),([TF]),([^,]*)', line +r'\1+\2+\3', line)
后来在我问谢映海为什么第二行csv文件有多余的逗号,我还因此额外对其做了判断处理。看到了谢映海是分割后读取了数据,再整合在一起的。我认为这样处理比较好,于是我也修改了我的方法。
使用line.split(,)方法将字符串根据逗号进行分割,再按照要求把前三列写入第四列(就是按需求将字符串连接)。
line = line_split[0] + "," + line_split[1]+ "," + line_split[2] + "," + line_split[0] + "+"+ line_split[1] + "+" + line_split[2]
最后是print(line)的方法,在fileinput.input实际是写入文件而非打印。再输出log以及关闭文件就完成了。
到此,我们第4课,第3次作业,需要的知识点和参考的样例全部奉献出来了,action起来!
推荐的文章
↓↓↓ 点击"阅读原文" 【查看更多信息】
初探接口测试框架--python系列4的更多相关文章
- 初探接口测试框架--python系列7
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列2
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列3
点击标题下「微信」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期 ...
- 初探接口测试框架--python系列5
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列6
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 初探接口测试框架--python系列1
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- http接口测试框架-python
简单分解一下 接口测试框架设计: 主入口 -> 遍历接口/用例 -> 发送请求+接收响应 ->结果的对比 -> 生成报告 ->发送email 分成几大类:主入口的py文件 ...
- Macaca 自动化框架 [Python 系列]
介绍 Macaca是一套完整的自动化测试解决方案,基于node.js开发.由阿里巴巴公司开源: 地址:http://macacajs.github.io/macaca/ 特点: 同时支持PC端和移动端 ...
- 【转】基于Python的接口测试框架实例
下面小编就为大家带来一篇基于Python的接口测试框架实例.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 背景 最近公司在做消息推送,那么自然就会产生很多接口,测试 ...
随机推荐
- (转)用Eclipse进行C++开发时Bianry not found的问题解决
本文转载自:http://blog.csdn.net/baimafujinji/article/details/49722399 由于Visual Studio体积过于庞大,很多人选择在Eclipse ...
- 百度地图和js操作iframe
document.getElementById("ifarme-63").contentWindow.document.getElementById("qksv" ...
- SqlServer统计最近一周的数据
select * from 表名 where DATEDIFF( day, 日期字段列名,getdate())<7 and DATEPART(w, 日期字段列名) <DATEPART( ...
- [rootfs]Yaffs2
1. busybox: sudo apt-get install busybox(v1.21.1) 2. mkyaffs2image: http://www.aleph1.co.uk/gitweb/? ...
- -all_load,-ObjC,-force_load三者的区别
参考:https://developer.apple.com/library/mac/qa/qa1490/_index.html,http://www.cnblogs.com/YouXianMing/ ...
- C#应用程序单进程检测
以下程序经过VS2010测试通过: /// <summary> /// 应用程序的主入口点. /// </summary> [STAThread] static void Ma ...
- Hibernate与MyBatis区别
Hibernate是当前主流的ORM框架,对数据库结构提供了较为完整的封装. MyBatis同样也是非常流行的ORM框架,主要在于pojo与SQL之间的映射关系. 区别: 1.两者最大的区别 针对简单 ...
- JQuery validate 在IE兼容模式下出现 js错误(成员找不到)的修正:
JQuery validate 在IE兼容模式下 下出现 js错误(成员找不到)的修正: // Add novalidate tag if HTML5. //this.attr( "nova ...
- A^B问题
题目:输入包括两个正整数 A 和 B(1 <= A, B <= 10000),A 和 B 之前用空格隔开 ★数据输出 输出一行,若 A ^ B < 10000,则直接输出结果(不包含 ...
- JAVA 网格布局管理器
//网格布局管理器 import java.awt.*; import javax.swing.*; public class Jiemian3 extends JFrame{ //定义组件 JBut ...