点击标题下「蓝色微信名」可快速关注

坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注、转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期待的方向,有更多兴趣的欢迎切磋,我们微信订阅号,联系方式如下:

更多书籍,敬请期待

背景说明

看看接口测试框架的神秘,小怪带领着大家一起开始第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系列1

初探接口测试框架--python系列2

初探接口测试框架--python系列3

Fiddler录制jmeter脚本,干货分享

jmeter接口自动化,你敢想,我敢玩

接口测试实战--SoapUI Pro5.1.2

测试路上,聊聊思路,谈谈手段

移动性能测试工具iTest4.1

↓↓↓ 点击"阅读原文" 【查看更多信息】

初探接口测试框架--python系列4的更多相关文章

  1. 初探接口测试框架--python系列7

    点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...

  2. 初探接口测试框架--python系列2

    点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...

  3. 初探接口测试框架--python系列3

    点击标题下「微信」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期 ...

  4. 初探接口测试框架--python系列5

    点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...

  5. 初探接口测试框架--python系列6

    点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...

  6. 初探接口测试框架--python系列1

    点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...

  7. http接口测试框架-python

    简单分解一下 接口测试框架设计: 主入口 -> 遍历接口/用例 -> 发送请求+接收响应 ->结果的对比 -> 生成报告 ->发送email 分成几大类:主入口的py文件 ...

  8. Macaca 自动化框架 [Python 系列]

    介绍 Macaca是一套完整的自动化测试解决方案,基于node.js开发.由阿里巴巴公司开源: 地址:http://macacajs.github.io/macaca/ 特点: 同时支持PC端和移动端 ...

  9. 【转】基于Python的接口测试框架实例

    下面小编就为大家带来一篇基于Python的接口测试框架实例.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧   背景 最近公司在做消息推送,那么自然就会产生很多接口,测试 ...

随机推荐

  1. 【linux】/etc/passwd文件

    /etc/passwd文件内容格式 /etc/passwd是保存用户信息的文件. 格式:用户名: 密码 : uid  : gid :用户描述:主目录:登陆shell 举个例子: root:x:0:0: ...

  2. 【转】ASP.NET MVC 的最佳实践

    [This post is based on a document authored by Ben Grover (a senior developer at Microsoft). It is ou ...

  3. The Android Gradle Plugin and Gradle version-compatibility

    http://tools.android.com/tech-docs/new-build-system/version-compatibility Version Compatibility Post ...

  4. bzoj3136

    Description 给定m个素数和Q个询问.每个询问有n个人,每次操作可以任意选择其中的一个素数p(素数可以重复使用),然后去掉剩余人数 mod p个人.对于每个询问,我们想知道,至少需要多少步操 ...

  5. android studio提示unable to run mksdcard sdk

    如题,android studio提示unable to run mksdcard sdk sudo apt-

  6. activiti自定义流程之整合(四):整合自定义表单部署流程定义

    综合前几篇博文内容,我想在整合这一部分中应该会有很多模块会跳过不讲,就如自定义表单的表单列表那一块,因为这些模块在整合的过程中都几乎没有什么改动,再多讲也是重复无用功. 正因为如此,在创建了流程模型之 ...

  7. 黄聪:wordpress更新失败‘C:\Windows\TEMP/wordpress.tmp’,更换临时保存路径的解决办法

    1.如果可劲进入远程桌面,则给C:\WINDOWS\TEMP目录设置IIS访问权限. 2.虚拟机的方法:首先用FTP软件在网页空间wp-content目录中新建一个[tmp]目录,然后在wp-conf ...

  8. 将List<Map>中的datas转换为json格式写入文件

    private static boolean writeToTextFileByJson(List<Map<String, Object>> datas, String tit ...

  9. PHP框架 Laravel Eloquent ORM 批量插入数据 && 批量更新目前没有

    foreach ($products as $v=>$a) { $count[] = array('product_name' => $a['name'], 'product_weight ...

  10. js 事件函数中的参数带换行符或换行标签都不能起作用的解决方法

    把问题参数值赋给标签的属性data-value,通过属性值获取参数值.