python json-json.loads()函数中的字符串需要是严格的json串格式,不能包含单引号


先看下json的dumps()和loads()函数的定义

json.dumps():将一个Python对象编码成JSON字符串。把字典对象转换成json

json.loads():将JSON格式字符串解码成Python对象。对简单的数据类型可以直接处理。如:string,Unicode,int,float,list,tuple,dict

把json串转成python的字典

 

 

json.loads()函数中的字符串需要是严格的json串格式,表示键值对的字符不能用单引号

例子:

>>> a='{"a":1,"b":2}'
>>> json.loads(a)
{u'a': 1, u'b': 2}
>>> b="{'c':1,'d':2}"
>>> json.loads(b)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\json\__init__.py", line 339, in loads
    return _default_decoder.decode(s)
  File "C:\Python27\lib\json\decoder.py", line 364, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Python27\lib\json\decoder.py", line 380, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Expecting property name: line 1 column 2 (char 1)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM