前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python中json对象转换出错解决方法【转】

python中json对象转换出错解决方法【转】

作者头像
用户2936342
发布2018-08-27 14:22:59
1.1K0
发布2018-08-27 14:22:59
举报
文章被收录于专栏:nummy

转自python中json对象转换出错解决方法

今天在使用python中的json转换碰到一个问题: 接收一个post的json字符串:

代码语言:javascript
复制
s={"username":"admin","password":"password","tenantid":""}

使用python自带的json库

代码语言:javascript
复制
import json
>>> a=json.loads(s)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  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
>>>

出错! 百思不得其解。经过调试,最终发现,python中默认使用单引号表示字符串"'" 所以当,用字符串符值以后,python会把双引号转换为单引号

代码语言:javascript
复制
>>> s={"username":"admin","password":"password","tenantid":""}
>>> print s
{'username': 'admin', 'password': 'password', 'tenantid': ''}

而json是不支持单引号的。 可以用下面的方法转换

代码语言:javascript
复制
json_string=json.dumps(s)
python_obj=json.loads(json_string)

ok,问题解决

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.04.27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档