如何获取use index从python中的unicode数据类型获取值

时间:2018-02-14 13:54:21

标签: python python-2.7 unicode

很抱歉提出重复的问题,但我被困在这里。在我的代码中,变量包含以下数据:

{  
"AlarmName":"ZDR ALARAM - 404 - ERROR",
"AlarmDescription":"This will check the 404 Errors in ZDR server",
"Trigger":{  
   "MetricName":"ZDR4dor",
   "Namespace":"ZDRLdics",
   "StatisticType":"Statistic",
   "Statistic":"SUM",
   "Unit":null,
   "Dimensions":[       ],
   "Period":60,
   "EvaluationPeriods":1,
   "ComparisonOperator":"GreatergrfdgsThreshold",
   "Threshold":0,
   "TreatMissingData":"",
   "EvaluatxcbleCountPercentile":""
}
}

我需要AlarmName。我使用var['AlarmName'],但它显示错误索引必须是整数而不是字符串。当我使用var[0]时,它会显示输出 的 {

对象类型为<type 'unicode'>

如何获得密钥&#39; AlarmName&#39; 的确切值?

1 个答案:

答案 0 :(得分:1)

目前,您的var只是一个包含该信息的(unicode)字符串。您需要解析它,因此它是一个字典对象,可以处理项目访问。最简单的方法是使用json模块,因为您的字符串似乎是有效的json对象:

import json

var = """
{  
"AlarmName":"ZDR ALARAM - 404 - ERROR",
"AlarmDescription":"This will check the 404 Errors in ZDR server",
"Trigger":{  
   "MetricName":"ZDR4dor",
   "Namespace":"ZDRLdics",
   "StatisticType":"Statistic",
   "Statistic":"SUM",
   "Unit":null,
   "Dimensions":[       ],
   "Period":60,
   "EvaluationPeriods":1,
   "ComparisonOperator":"GreatergrfdgsThreshold",
   "Threshold":0,
   "TreatMissingData":"",
   "EvaluatxcbleCountPercentile":""
}
}
"""

var = json.loads(var)
print(var['AlarmName'])
# ZDR ALARAM - 404 - ERROR