chzhiyi / -KnowledgeShare

6 stars 1 forks source link

20190219 - Python中json格式的转化与解析 - huasheng #15

Open huashengcaicai opened 5 years ago

huashengcaicai commented 5 years ago

json串转化为python格式

import json
sJOSN = '{"userAccount":"54321","date":"2016-12-06 10:26:17","ClickTime": 1480991177,"jsonInfo":{"lon":121.5612,"lat":31.1832,"isGps":1,"netType":"WIFI","addr":"浦东新区长江南路1099弄56号"}}'
sValue = json.loads(sJOSN)
print(sValue)
print(type(sJOSN))

python格式的转化为json格式

import json
sDict={'jsonInfo': {'netType': 'WIFI', 'lat': 31.1832, 'addr': '浦东新区长江南路1099弄56号', 'isGps': 1, 'lon': 121.5612}, 'userAccount': '54321', 'ClickTime': 1480991177, 'date': '2016-12-06 10:26:17'}
sValue = json.dumps(sDict)
print(sValue)
print(type(sValue))

json数据解析

import json
sJOSN = '{"userAccount":"54321","date":"2016-12-06 10:26:17","ClickTime": 1480991177,"jsonInfo":{"lon":121.5612,"lat":31.1832,"isGps":1,"netType":"WIFI","addr":"浦东新区长江南路1099弄56号"}}'
sValue = json.loads(sJOSN)
for k in sValue.keys():
  if str(type(sValue[k]))!="<class 'dict'>":
    print(k+':'+ str(sValue[k]))
  else:
    print(str(k)+':')
    for k1 in sValue[k].keys():
      print(' '*3 + k1 +':'+str(sValue[k][k1]))

python中for in循环遍历的用法

a = {'a': '1', 'b': '2', 'c': '3'}
# 方式一:
for key in a:
    print(key + ':' + a[key])
# 方式二:
for key in a.keys():
    print(key + ':' + a[key])
# 方式三:
for key, value in a.items():
    print(key + ':' + value)
# 方式四:
for (key, value) in a.items():
    print(key + ':' + value)

1.这块主要是利用python中的json包,对json数据进行一个格式转化所需要用到是json中的方法 2.一个是json.loads() ,是将json格式转化为python格式的,一个是json.dumps(),是将python格式转化为json格式的