返回的python json列表的含义

时间:2010-03-22 12:19:30

标签: python json

我是python的新手,所以我真的不太懂语言。

以下示例来自http://docs.python.org/library/json.html

>>> import json
>>> json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]')
[u'foo', {u'bar': [u'baz', None, 1.0, 2]}]
你的意思是什么?以及我如何知道字典中哪些元素可用?

3 个答案:

答案 0 :(得分:4)

这是一个unicode。迭代dict产生其键:

for k in D:
  print k, D[k]

答案 1 :(得分:3)

伊格纳西奥的答案有点冗长(没有对我赞成)

你的东西'意味着'某事'是一个unicode字符串,而不是ascii字符串。通常,文本被编码为8位字符,您需要编码才能正确解释/显示它。 Unicode是16位的,不需要为各种与语言环境相关的字符进行单独编码。

在字典中(由{}括起来),键是“:”之前的部分,后面是值。

你有一个列表,包含元素:

  • foo,一个Unicode字符串
  • 包含以下内容的字典:
    • 一个键(unicode)“bar”,可以通过该键访问带有值的列表
      • unicode string baz,
      • a float 1.0
      • 整数2

答案 2 :(得分:1)

python type函数在这里很有用。

>>> import json
>>> data = json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]')
>>> data
[u'foo', {u'bar': [u'baz', None, 1.0, 2]}]
>>> type(data)
<type 'list'>
>>> type(data[0])
<type 'unicode'>
>>> type(data[1])
<type 'dict'>