Python对CSV文件的处理

在接口自动化测试中,把测试的数据存储到csv的文件也是一种很不错的选择,下面就详细的介绍如何实现CSV文件内容的读取和如何把数据写入到CSV的文件中。在Python中,读取csv文件使用到的标准库是csv,直接导入就可以了,要读取的CSV文件内容为:

见读取CSV文件里面内容的源码:

#!/usr/bin/env python 
#-*-coding:utf-8-*-

#author:wuya

import  csv

def readCsv():
   with open('csvTest.csv','r') as f:
      rander=csv.reader(f)
      #对数据循环获取
      for i in rander:
         print(i)

见执行函数readCsv()后执行的结果:

依据获取的数据来看,返回的数据是列表,可以获取到具体的值。csv调用方法rander后,返回的是一个迭代器,所以循环执行这个迭代器,获取它里面的数据。

另外一种方式是把读取的数据类型是字典,使用到的方法是DictReader,见实现的源码和执行结果返回的数据:

如果想获取字典字典单独的值,比如地址,那么获取的方式为:

下面实现接口测试中,如何把获取的数据写入到 csv的文件中,比如调用接口,现在实现调用https://www.sojson.com/open/api/weather/json.shtml?city=%E8%A5%BF%E5%AE%89该接口,把响应数据写到csv的文件中,见实现的源码:

#!/usr/bin/env python 
#-*-coding:utf-8-*-

#author:wuya

import  csv
import  requests

def writeCsv():
   r=requests.get('https://www.sojson.com/open/api/weather/json.shtml?city=%E8%A5%BF%E5%AE%89')
   header=['接口地址','接口响应数据']
   values=[
      {'接口地址':'https://www.sojson.com/open/api/weather/json.shtml?city=%E8%A5%BF%E5%AE%89',
       '接口响应数据':r.json()}]
   with open('csvTest.csv','w') as f:
      writer=csv.DictWriter(f,header)
      writer.writeheader()
      writer.writerows(values)

writeCsv()

执行后,数据就会写入到csv的文件中,如上是以字典的方式把数据写入到文件中。执行成功后,打开csv的文件,见写入的内容:

本文分享自微信公众号 - Python自动化测试(wuya-python)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-09-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Petrichor的专栏

requirements.txt 介绍 & 快捷生成

  requirements.txt 文件 里面记录了当前程序的所有依赖包及其精确版本号。

16210
来自专栏逆向技术

win32程序之窗口程序,以及消息机制

  通过上一讲.我们了解了窗口其实是绘制出来的.而且是不断绘制的过程. 所以窗口的本质是绘制. 但是我们现在看到的窗口程序.都可以点击关闭按钮. 使用鼠标点击会...

14230
来自专栏Petrichor的专栏

主机:各线介绍 & 问题速查表

  在独立组装过八九台主机,遇坑无数后,我写下了《如何自己组装电脑(从配件到整机)来省下一大笔钱》以及《组装台式机遇坑总结》这两篇技术博客。

12310
来自专栏黑白安全

星号(*)密码查看

24640
来自专栏AI科技大本营的专栏

阿里从来不只属于马云,马云永远属于阿里

9 月 10 日教师节,阿里巴巴集团创始人马云发出题为“教师节快乐”的公开信宣布:一年后的阿里巴巴 20 周年之际,即 2019 年 9 月 10 日,他将不再...

9420
来自专栏Petrichor的专栏

shutdown & reboot & last

23730
来自专栏Petrichor的专栏

个人理解:import scipy语句 为什么不能导入 scipy.misc.imsave 模块

1.4K30
来自专栏Petrichor的专栏

OJ术语: AC、WA、TLE、OLE、MLE、RE、PE、CE

52310
来自专栏黑白安全

百度知道隐藏信息查询

可以看到查询账号的百度知道的所有回复。 百度不收录百度知道答主的部份回复,而且删除过了的提问,还是能看到回复。

12010
来自专栏哲学驱动设计

CTO 能力模型 V0.1

最近思考了很多,我在大贲这几年的工作内容。从一开始到现在,伴随着大贲从一二十人,走到了现在的两百多人。我的工作也从一开始的带头冲锋陷阵,逐步转移到了带领产品研发...

28020

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励