Python 处理 JSON数据
使用 Python 处理 JSON 格式数据
调用软件 API 获取的数据为 JSON 格式的原始数据,不便于直接读取。提取原始中的信息还需要行计算转换为便于理解的信息,因此编写一个Python脚本来处理数据转换格式,并添加描述便于理解和处理。
Python 有着丰富的库函数,简单的语法结构,是一个非常适合编写脚本的语言。
Python 不能直接处理识别 JSON 格式的数据,当用 Python 来处理JSON数据时需要先引入 json 库,调用 JSON 函数将 JSON 格式的数据转换为 Python 字典格式的数据:
import json
为了能够方便的调用读取数据文件,还需要引入 sys 库。通过 sys 库来读取数据文件名称,以及读取文件和写入转换后的数据:
import os
打开通过 CLI (命令行) 输入的参数以只读的方式打开指定文件,并将文件内容保存在参量 f 中后关闭文件,将保存在参量 f 中的数据通过调用 JSON 库函数转换后保存在 status_data 中:
f = open(sys.argv[1], 'r') # open(filename,'r') 为 sys 函数,打开文件 filename,sys.argv[a]同为sys函数,值为命令行参数的第a个
status_data = json.load(f) # json.load() JSON 库函数,转换 JSON 格式数据为 Python 字典格式数据
f.close() # 关闭打开的文件 f
用大括号定义字典,向字典中写入数据:
in_and_out = {} # 创建字典 in_and_out
in_and_out["out"] = data_value # 向字典 in_and_out 中写入键值对:键 out 值 data_value
用 len() 函数测量列表 list 中数据的个数:
length = len(status_data["stat"]) # 读取列表 status_data["stat"] 的长度并写入变量 length
获取字典中键的值:
data = status_data_in_list[i] # 向变量 data 中写入键值对
data_value = data.get("value",0) # 获取字典 data 中键为 value 的值,如果返回 value 的值,否则返回 0
在文件以写入方式打开后便可将内容写入文件,调用 print 函数写入,写入之后保存关闭文档:
f = open(sys.argv[1], 'w') # 以写入方式打开文件 sys.argv[1] ,原有文件会被清空,如果文件不存在则创建文件
print(data_value,file=f) # 将 data_value 的值写入文件 f 中,会自动换行
f.close() # 关闭文件
通过以上函数的调用已经可以对文件进行读写操作,并对 JSON 格式的文件进行处理。