for dss in d:
datas_x.append(float(dss["pos"]["x"]))
datas_y.append(float(dss["pos"]["z"]))
将数据保存到列表中,然后创建pandas的DataFrame,DataFrame是由多种类型的列构成的二维标签数据结构。
path_x = pd.Series(datas_x)
path_y = pd.Series(datas_y)
path_df = pd.DataFrame()
path_df['pathx'] = path_x
path_df['pathy'] = path_y
最后将数据保存到csv中。
filepath = "E:\\python\\python\\2021\\202104\\0409\\path_data.csv"
path_df.to_csv(filepath, index=False, header=False)
完整代码:
import json
import pandas as pd
filepath = "E:\\python\\python\\2021\\202104\\0409\\path_data.csv"
with open('2.json', encoding='utf-8') as f:
line = f.readline()
d = json.loads(line)
f.close()
datas_x = []
datas_y = []
for dss in d:
datas_x.append(float(dss["pos"]["x"]))
datas_y.append(float(dss["pos"]["z"]))
path_x = pd.Series(datas_x)
path_y = pd.Series(datas_y)
path_df = pd.DataFrame()
path_df['pathx'] = path_x
path_df['pathy'] = path_y
path_df.to_csv(filepath, index=False, header=False)
接口测试就是数据的测试,在测试之前,需要准备好测试数据,而测试数据可以用数据库、excel、txt和csv方式,当然还有一种方式,那就是使用json文件来储存测试数据。常用的方式就是这些。
python读取json文件和读取txt方式是一样的,获取路径,判断路径是否存在,获取文件名及绝对路径,打开读取数据,提取关键数据,关闭文件。具体流程,画了一个草图方便理解:
具体代码实现
@author: Leo
@software: pycharm
@file: operate_json.py
@time: 2020/5/3 0003 9:01
@Desc:
将一份json文件导出为CSV,首先导入json库,with open打开文件,赋值给变量our_file,read方法读取文件,loads方法将json文件转为Python对象。新建空变量,for循环遍历键和值,再利用+=,使变量中成对存储json文件中的键和值。定义CSV文件,赋值到变量f,用write方法将存好的键和值写入新文件。
使用open()函数打开一个文件,write()函数写入内容,最后使用close()函数关闭已打开的文件
以上内容可以简写为
推荐with open()这种写法,比较简洁,而且避免了因为出错或其他原因导致不能close()文件的情况关于open()函数的三个参数(1)文件名。可以指定绝对路径,若不写路径则保存在该.py文件所在目录
(2)操作模式。操作模式有很多,常用的有w、a、r、wb、rb等(3)编码。常用编码有utf-8、gbk等,编码问题可以会导致乱码读文件和写类似
(推荐)可以改写成
关于读取内容
使用 pandas 导入数据是一种非常方便和高效的方式,可以将不同格式的数据导入到 DataFrame 对象中,从而进行数据清洗、数据处理和数据分析等操作。在处理 JSON 数据时,pandas 提供了灵活的接口,可以根据不同的 JSON 数据结构进行解析。read_json() 函数还支持许多参数,例如指定文件编码、指定 JSON 文件中的键等。可以使用 pandas 中的 read_json() 函数,并将 JSON 字符串作为输入参数。该代码会将 JSON 字符串转换为 DataFrame 对象。
读首先是读文件,有readline和readlines两种方式,readline是逐行读,readlines是直接读入所有行返回一个列表,当文件很大时,readlines会很慢,不建议使用。再将读进来的每行用json.loads()解析,会返回一个字典。import jsonwith open(root, encoding='utf-8') as f:while True:line = f.rea...
CSV:Comma-Separated Values(逗号分隔的值)CSV文件是简化的电子表格,是纯文本文件JSON是一种格式,它以 JavaScript 源代码的形式,将信息保存在纯文本文件中csv模块是python自带的模块,不要安装。
在Python中,range()是一个内置函数,用于生成一个整数序列。它通常用于循环结构(如for循环)中,以控制循环的迭代次数。只有一个参数(例如 range(5)),则表示从0开始,到该参数的整数(但不包括该参数的整数),即 [0, 1, 2, 3, 4]。有两个参数(例如 range(1, 5)),则表示从第一个参数的整数开始,到第二个参数的整数(但不包括该参数的整数),即 [1, 2, 3, 4]。
import numpy as np
data=pd.read_json('test.json',orient='values',encoding='utf-8')
for indexs in data.index:
print(data.loc[indexs].values[0:-1])
#拼sql i...
想要从JAON文件转换成csv文件,进行数据处理。注意此json文件为多个json的合集。
2.测试json文件数据
{"t": "2017-12-20T10:53:51.582000+08:00", "a": 0, "b": 0, "c": 7, "d": 42, "e...