功能代码二:如何把字典数据写入文件中

#1、假设字典数据和普通字符串一样,写入文件

import csv
testResult = {'接口名':'登录接口'}
file = open('test_1.csv','w')
file.write(testResult)
file.close()

执行代码报错:
write必须是str类型的,不可以是字典类型数据
功能代码二:如何把字典数据写入文件中_第1张图片
#2、把字典的key和value,也许是str类型,写入试试

import csv
testResult = {'接口名':'登录接口'}
print(type(testResult.keys()),type(testResult.values()))
file = open('test_1.csv','w')
file.write(testResult.keys()+','+testResult.values())
file.close()

报错:
是字典类型的key和value,也不能写入
功能代码二:如何把字典数据写入文件中_第2张图片
#3、把字典的key和value,转化成str类型写入

import csv
testResult = {'接口名':'登录接口'}
print(type(testResult.keys()),type(testResult.values()))
file = open('test_1.csv','w')
file.write(str(testResult.keys())+','+str(testResult.values()))
file.close()

程序没报错,已经写入数据,但是,打开 csv文件,可以看到写入的内容和预期并不一样。
功能代码二:如何把字典数据写入文件中_第3张图片
功能代码二:如何把字典数据写入文件中_第4张图片

#4、通过for循环,读取key-value的值之后,再写入
这里其实是有问题的,open应该放在for循环的前面。不过可以运行成功

import csv
testResult = {'接口名':'登录接口'}
for key in testResult.keys():
    file = open('test_1.csv','a',newline='') 
    file.write(key)
file.close()

在这里插入图片描述
#5、一个key和一个value一起写入
#这里的write放在两个并列的for下面,取完了这一组key-value,就往文件里写

import csv
testResult = {'接口名':'登录接口'}
file = open('test_1.csv','a')
for key in testResult.keys():
    print(key)  #这里需要加print,否则程序报错
for value in testResult.values():
    print(value)
file.write(key+','+value)
file.close()

功能代码二:如何把字典数据写入文件中_第5张图片

#5、多组key和value一起写入
#这里的write要放在各自的for下面,取一个key就往文件里写一个

import csv
testResult = {'接口名':'登录接口','url':'http://localhost:8080/login.php','参数个数':'6'}
file = open('test_1.csv','a')
for key in testResult.keys():
    file.write(key)  
for value in testResult.values():
    file.write(value)
file.close()

代码执行没问题,但写入的格式不是我们想要的
功能代码二:如何把字典数据写入文件中_第6张图片

#6、多组数据的字典类型,写入csv文件。python提供了一种方式【items()】,把key和value一起输出

for key,value in testResult.items():
print(key,value)

import csv
testResult = {'接口名':'登录接口','url':'http://localhost:8080/login.php','参数个数':'6'}
file = open('test_1.csv','w')
for key,value in testResult.items():
    print(key,value)
    file.write(key+','+value)
file.close()

此次出现的问题:

  1. 写完一组后连在一起,没有换行,也没有分开在两个单元格。
  2. 写入的顺序不对(这是因为字典数据是无序的,没有问题)
    功能代码二:如何把字典数据写入文件中_第7张图片

#6.1、解决换行或者分开单元格

  1. 想要换行写入

file.write(key+’,’+value+’\n’)
功能代码二:如何把字典数据写入文件中_第8张图片

  1. 分开两个单元格写

file.write(key+’,’+value+’,’)
功能代码二:如何把字典数据写入文件中_第9张图片

  1. 追加写入(内容没问题,也会发现顺序不一致问题,这是因为字典数据是无序的,没有问题):

import csv
testResult = {‘接口名’:‘登录接口’,‘返回结果’:‘校验成功’,‘参数个数’:‘6’}
file = open(‘test_1.csv’,‘a’)
for key,value in testResult.items():
print(key,value)
file.write(key+’,’+value+’,’)
file.write(’\n’)
file.close()

功能代码二:如何把字典数据写入文件中_第10张图片

你可能感兴趣的:(五,接口测试)