在研究webService的时候,须要将参数列表化,如将'["123","456"]'转化为["123","456"],须要使用到json.loads()python
因为python并不怎么区分" 和 ', 因此本人历来都是用',由于不用按shift。(懒癌晚期)web
可是在json这个库中,若是不加区分,会出现问题,以下图:json
print json.loads("['123','456']") # print json.loads('["123", "123"]')
执行后会报错:flask
C:\Python27\python.exe E:/repository/flask_webService/test.py Traceback (most recent call last): File "E:/repository/flask_webService/test.py", line 22, in <module> print json.loads("['123','456']") File "C:\Python27\lib\json\__init__.py", line 338, in loads return _default_decoder.decode(s) File "C:\Python27\lib\json\decoder.py", line 366, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "C:\Python27\lib\json\decoder.py", line 384, in raw_decode raise ValueError("No JSON object could be decoded") ValueError: No JSON object could be decoded
可是执行下面的语句:函数
# print json.loads("['123','456']") print json.loads('["123", "123"]')
显示结果为code
C:\Python27\python.exe E:/repository/flask_webService/test.py [u'123', u'123'] Process finished with exit code 0
最后总结就是,若是使用json.loads()这个函数,须要在待转换字符串中使用双引号。字符串