Python(7) |
您所在的位置:网站首页 › Python嵌套列表取值 › Python(7) |
import json
list = {
"sourceMedia": [{
"masterIp": "10.37.153.5",
"slaveIps": [{
"slaveIp": "10.37.153.5",
"bkIp": None
}],
"port": "3306",
"dbName": "rdrssit_5",
"dataCenter": "xuzhuang",
"rovip": "10.37.153.5",
"rwvip": "10.37.153.5",
"sysEname": "RDRS",
"haType": "S",
"slaveBkExist": False,
"logicUserName": None,
"logicPassword": None,
"logicDbName": None,
"logicPort": None,
"clusterSn": None,
"partitionColumn": None,
"disPlayName": "10.37.153.5-RDRS-rdrssit_5-xuzhuang",
"subscribeMultiTables": [{
"tableName": "test_table01",
"isInit": True
}],
"subscribeRecType": False,
"dataSourceType": "regular"
}],
"subscribeJobInfo": {
"userName": "18110522",
"bizSystem": "RDRS",
"subscribeRecType": "recoveryIncluded"
}
}
''' 这个json格式,sourceMedia、subscribeJobInfo两层目录 sourceMedia下面其实又嵌套了字典和key-value值,但是加了中括号的就得加索引,这样才能获取到'''
print(list['subscribeJobInfo']) #ok
print(list['subscribeJobInfo']['userName']) # ok
print(list['sourceMedia'][0]) #ok
print(list['sourceMedia'][0]['port']) #ok
print(list['sourceMedia'][0]['masterIp']) #ok
print(list['sourceMedia'][0]['subscribeMultiTables'][0]['isInit']) # ok
列表与字典的获取,在列表与字典多层相互嵌套的情况下,获取某个属性的值,必须分清楚嵌套层次,然后才能获取值。还有列表一定要加中括号[0],列表里面包含字典!不然不识别的!从0开始! response_list={ "result": True, "errCode": None, "msg": None, "data": { "kafkaConsumedParams": [{ "partition": "0", "lastestOffset": "", "lastestOffsetTime": "", "snapNotConsumed": "", "incrNotConsumed": "", "snapExtracted": "0" }, { "partition": "1", "lastestOffset": "", "lastestOffsetTime": "", "snapNotConsumed": "", "incrNotConsumed": "", "snapExtracted": "0" }], "captureInitStatus": [{ "connectorName": "10.37.153.4-RDRS-rdrssit_4_1544012992078.6638", "startTime": None, "updateTime": None, "endTime": None, "status": "unstarted" }, { "connectorName": "10.37.153.5-RDRS-rdrssit_5_1544012992078.6638", "startTime": None, "updateTime": None, "endTime": None, "status": "unstarted" }] } } # print(type(response_list)) # 字典类型 # varcaptureInitStatus0 = response_list['data']['captureInitStatus'][0] # varcaptureInitStatus1 = response_list['data']['captureInitStatus'][1] # print(varcaptureInitStatus1) # 这样获取的依然是个字典, # print(type(varcaptureInitStatus1)) for i in (0,1): varcaptureInitStatus = response_list['data']['captureInitStatus'][i]['status'] # 字典里面有列表 print(varcaptureInitStatus)
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |