1. json 的模块
import json
2. 一个命令(curl )返回一个json,利用json 模块来解析和展示
import os
import sys
import json
import commands
cmd = 'curl -s "http://xxxxx" 2>/dev/null' #担心执行命令有异常输出,导致最终的结果数据不是一个合法的JSON
result = json.loads(commands.getoutput(cmd)) # 执行cm命令,并把获取的数据用 JSON 格式组装起来
print json.dumps(result['result_body']['table_schema'],indent=4) # 获取上面JSON 格式中需要的信息,并用缩进符=4个来打印出JSON 的树状结构
3, json loads dumps 2个函数的区别
- json.dumps(str) 把字符串str 转换成json 编码,就是把str 转换成json 的数据
- json.loads(str) 把str 转换成json,并可以调用json 的相关函数来处理这个json 数据
4. json 的示例
{
"pkey": "123456",
"skey": "id_123",
"table_type": "AAA",
"max_skey_num": 5000,
"load_config": {
"lock_skey": "false",
"lock_value": "false"
},
"storage_config": {
"xxxx_skey": "false",
"xxxx_value": "false",
"xxxxs_type": "SNAPPY"
},
"version": 8,
"table_name": "xxxxxxx",
"fields": [
{
"field_type": "INT64",
"field_name": "aaaaa"
},
{
"field_type": "INT64",
"field_name": "bbbb"
},
{
"seperator": "&",
"field_type": "CHAR",
"field_name": "cccccc",
"multi_value": true
},
{
"field_type": "DOUBLE",
"field_name": "score"
}
],
"ttl_secs": 4294967295
}