python读取json格式文件


先把代码贴出来,之后慢慢修饰,添加注释把

import json
import ast
###########################################
# json格式文件——获取数据
def processData(path):
    obj = open(path,'r',encoding='utf-8')
    inputData = []
    outputData = []
    for line in obj.readlines():
        dic = json.loads(line)
        t = dic['input'],dic['output']
        inputData.append(t[0])
        outputData.append(t[1])
    obj.close()
    return inputData, outputData
##########################################   
# json格式文件——获取参数
def processParam(path):
    obj = open(path,'r',encoding='utf-8')
    param = []
    for line in obj.readlines():
        dic = json.loads(line)
        t = dic['iterationTime'],dic['initialIndividual'],dic['activationFunction'],dic['cross'],dic['mutant']
        for i in range(len(t)):
            param.append(t[i])
    obj.close()
    return param
##########################################
# json格式文件——获取知识
def processKnow(path):
    obj = open(path,'r',encoding='utf-8')
    inputData = []
    outputData = []
    status = []
    for line in obj.readlines():
        dic = json.loads(line)
        t = dic['inputs'],dic['outputs'],dic['status']
        inputData.append(t[0])
        outputData.append(t[1])
        status.append(t[2])
    obj.close()
    return inputData, outputData, status
#################################################
# 知识字典获取方法
def processKnow_data(inputKnow, inputKnow_P,inputKnow_b):
    for i in range(len(inputKnow)):
        know_dict = ast.literal_eval(inputKnow[i])
        inputKnow_P.append([])
        inputKnow_b.append([])
        for key in know_dict:
            inputKnow_P[i].append(key)
            inputKnow_b[i].append(know_dict[key])
    return inputKnow_P,inputKnow_b
#########################################
# 获取路径
path_data = "F:\TestData.json"
path_param = "F:\TestParam.json"
path_know = "F:\TestKnow.json"
##########################################

inputData, outputData = processData(path_data)
param = processParam(path_param)
inputKnow, outputKnow, status = processKnow(path_know)
inputKnow_P = []
inputKnow_b = []
outputKnow_P = []
outputKnow_b = []



in_P,in_B = processKnow_data(inputKnow, inputKnow_P,inputKnow_b)
out_P, out_B = processKnow_data(outputKnow, outputKnow_P,outputKnow_b)

TestData.json文件:

python获取json大小写 python 获取json_json


TrstParam.json文件:

python获取json大小写 python 获取json_json格式_02

TestKnow.json文件:

python获取json大小写 python 获取json_python_03