python post json 解析失败_python中json对象转换出错解决方法
今天在使用python中的json轉(zhuǎn)換碰到一個問題:
接收一個post的json字符串:
s={"username":"admin","password":"password","tenantid":""}
使用python自帶的json庫import json
>>> a=json.loads(s)
Traceback (most recent call last):
File "", line 1, in File "/usr/lib/python2.7/json/__init__.py", line 326, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
TypeError: expected string or buffer
>>>
錯!
百思不得其解。經(jīng)過調(diào)試,最終發(fā)現(xiàn),python中默認(rèn)使用單引號表示字符串"'"
所以當(dāng),用字符串符值以后,python會把雙引號轉(zhuǎn)換為單引號
>>> s={"username":"admin","password":"password","tenantid":""}
>>> print s
{'username': 'admin', 'password': 'password', 'tenantid': ''}
而json是不支持單引號的。
可以用下面的方法轉(zhuǎn)換
json_string=json.dumps(s)
python_obj=json.loads(json_string)
ok,問題解決
本條技術(shù)文章來源于互聯(lián)網(wǎng),如果無意侵犯您的權(quán)益請點擊此處反饋版權(quán)投訴
本文系統(tǒng)來源:php中文網(wǎng)
總結(jié)
以上是生活随笔為你收集整理的python post json 解析失败_python中json对象转换出错解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛一本通 1381:城市路(Di
- 下一篇: linux mint php mysql