⽤pandas进⾏csv⽂件的读取和写⼊
应⽤场景:
在⾃动化测试中,对于⼤量测试数据的驱动以及测试结果的存储;
csv特点:csv⽂件具有格式简单,快速存取,兼容性好等特点;类似⼀个⽂本⽂档,每⼀⾏保存⼀条数据,同⼀⾏中的各个数据通常采⽤逗号(或tab)分隔。python⾃带了csv模块,专门⽤于处理csv⽂件的读取和存档。
以⼀个简单的student表为例:
python怎么读csv数据在测试的过程中可能要考虑到参数化,所以需要读取某⼀列的数据,将其依次传到接⼝中;
1import pandas as pd # 导⼊pandas模块,简写为pd
2data_info = pd.read_csv("student.csv")  # 读取student表内容,返回的是数组的形式;
3for i, data in data_info.iterrows():
4    name = data["name"]  # 取到name这⼀列的数据
5    age = data["age"]  # 取到age 这⼀列的数据
6    subject = data["subject"]
那么如何将数据写⼊csv呢?
1import pandas as pd
2data1 = ["⼩明", 20] # 以list 存储每⼀⾏的数据
3data2 = ["⼩⾬", 21]
4data3 = ["⼩花", 22]
5header = ["姓名", "年龄"]
6df = pd.DataFrame([data1, data2, data3], columns=header) # 组成⼀个csv
<_csv("./data.csv", index=False)
结果如下:
最后可以封装⼀下pandas读写csv的⽅法,这样在⼯作中使⽤起来会⽐较⽅便;
1def read_csv_data(file_path):
2    # 读取csv数据,输⼊⽂件的路径,返回的是{[]}结构的数据
3    df = pd.read_csv(file_path)
4    data_list = [{k: v for k, v in row.items() if 'Unnamed:' not in k} for index, row in df.iterrows()]
5    return data_list
6
7
8def write_csv_data(data, file_path):
9    # 存储csv,输⼊{[]}结构数据,⽂件路径
10    df = pd.DataFrame(data)
11    # print(df)
12    df.to_csv(file_path, index=False)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。