为什么单引号和双引号在python json中不同
Why single and double quotation marks are different in python json
我知道单引号和双引号在 python 中的工作方式相同,但为什么在以下两种情况下表现不同
>>> import json
>>> json.loads('{"M":2}')
{u'M': 2}
并且在
>>> json.loads("{'M':2}")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\p\python\lib\json\__init__.py", line 326, in loads
return _default_decoder.decode(s)
File "c:\p\python\lib\json\decoder.py", line 360, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "c:\p\python\lib\json\decoder.py", line 376, in raw_decode
obj, end = self.scan_once(s, idx)
ValueError: Expecting property name: line 1 column 1 (char 1)
提前致谢
>>> json.loads('{"M":2}')
{u'M': 2}
那个returns一个python字典
JSON 只接受双引号。
json.loads("{'M':2}")
这不是有效的 JSON。
参见:jQuery.parseJSON single quote vs double quote
我知道单引号和双引号在 python 中的工作方式相同,但为什么在以下两种情况下表现不同
>>> import json
>>> json.loads('{"M":2}')
{u'M': 2}
并且在
>>> json.loads("{'M':2}")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\p\python\lib\json\__init__.py", line 326, in loads
return _default_decoder.decode(s)
File "c:\p\python\lib\json\decoder.py", line 360, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "c:\p\python\lib\json\decoder.py", line 376, in raw_decode
obj, end = self.scan_once(s, idx)
ValueError: Expecting property name: line 1 column 1 (char 1)
提前致谢
>>> json.loads('{"M":2}')
{u'M': 2}
那个returns一个python字典
JSON 只接受双引号。
json.loads("{'M':2}")
这不是有效的 JSON。
参见:jQuery.parseJSON single quote vs double quote