json和python字典的转换

在Python标准库的json包中,提供了JSONEncoder和JSONDecoder两个类来实现Json字符串和dict类型数据的互相转换。

在Python标准库的json包中,提供了JSONEncoder和JSONDecoder两个类来实现Json字符串和dict类型数据的互相转换。

示例代码如下:

  1.  
    #!/usr/bin/python3
  2.  
    from json import *
  3.  
    if __name__=="__main__":
  4.  
    d={}
  5.  
    d[ 'a'] =1
  6.  
    d[ 'b']=2
  7.  
    d[ 3]='c'
  8.  
    d[ 4]=['k','k1']
  9.  
    #将Python dict类型转换成标准Json字符串
  10.  
    k=JSONEncoder().encode(d)
  11.  
    print(type(k))
  12.  
    print(k)
  13.  
    #将json字符串转换成Python dict类型
  14.  
    json_str= '{"a":1,"b":2,"3":"c","4":["k","k1"]}'
  15.  
    d=JSONDecoder().decode(json_str)
  16.  
    print(type(d))
  17.  
    print(d)

运行截图:

需要注意的是:标准Json字符串必须使用双引号(")而不能使用单引号('),否则从字符串转换成dict类型会提示出错。

以上代码在Windows下python 3.3下运行通过。

总结,  将Python 的dict类型转换成标准Json字符串用 encode()

    

扫描二维码关注公众号,回复: 1907465 查看本文章

    def encode(self, o):
    """Return a JSON string representation of a Python data structure.

    >>> from json.encoder import JSONEncoder
    >>> JSONEncoder().encode({"foo": ["bar", "baz"]})
    '{"foo": ["bar", "baz"]}'

    """

  还有用 json.dump()    反之用loads是()和 decode()

猜你喜欢

转载自www.cnblogs.com/ithairy/p/9272026.html