软件测试比赛_数据驱动模块 会用到的csv文件读写方法(目标:言简意赅)(学习笔记)

前提:

 

导入csv模块:

#首先导入csv模块

import csv

 

举例的.csv数据:

商品分类名称,预期结果

111111111111111111111,商品分类名称输入有误,请重新输入。

雨伞,以下为搜索到的商品信息!

 

特别说明:

写之方法和读之方法为相对独立的写法。

 

写之方法:

 

准备写入文件的数据:

#把要写入的数据分类成header标题和data具体内容两个列表形式(data里面每条记录要设为一个小列表):

header=['商品分类名称','预期结果']

data=[['111111111111111111111','商品分类名称输入有误,请重新输入。']['雨伞','以下为搜索到的商品信息!']]

 

open()函数:

 

#用open函数覆盖或创建一个csv文件,返回一个可操作的文件变量:

with open('mydata.csv',w,encoding='utf-8-sig',newline='') as csv_file  #这里newline参数后为连续的双单引号

 

csv.writer()类:

#下面代码是创建了csv.writer类((构造方法之)参数:可操作的文件变量)的取名为writer的对象,以在之后调用类的writerow()和writerows()方法。

wri=csv.writer(csv_file)

 

writerow()和writerows()方法:

#这里的说明可以看:Python csv的writerow()和writerows()区别-CSDN博客,writer()类对象.writerow(参数:可以是每个元素为字符串的列表,最终结果只有一行),writer类对象.writerows(参数:可以是每个元素为1个小列表的大列表,里面的每个小列表元素将成为csv文件的每1行)

wri.writerow(header)

#指针已在标题后

wri.writerows(data)

 

写之方法完毕。

 

读之方法:

 

首先,创建一个空列表:

dataList=[]

 

open()函数:

#用open函数打开csv文件,返回一个可操作的文件变量:

with open('mydata.csv',r,encoding='utf-8-sig',newline='') as csv_file:

 

csv.reader()类:

        #将这个可操作的文件变量使用csv模块的reader(构造参数:那个可操作的文件变量名)类成为一个迭代器(遍历这个迭代器返回一个个列表):

        rea=csv.reader(csv_file)         

 

next()函数:

'''

       上一条那个迭代器,有着迭代器的特性,可以用for循环遍历,所以也可以使用next(参数:迭代器名)函数来实现迭代(迭代出下一个,最先指针在开头,所以等效于for循环的第一个迭代)

'''

        header=next(rea)  #迭代器名写于next()函数的参数位置,这里返回内容将是.csv文件里的标题(列表形式),并且保存在了header变量中。

 

标题之后的具体数据保存于列表: 

         #现在的迭代器的指针已经位于第二行的开头了,所以for循环的遍历是从“具体数据”开始

         for data in rea:

                dataList.append(data)  #for循环实现了将具体数据的每一行用list.append()方法添加进了dataList列表。

 

读之方法完毕。

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值