首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python JSON编码

Python JSON编码
EN

Stack Overflow用户
提问于 2009-06-11 21:37:10
回答 7查看 159K关注 0票数 60

我试图用Python将数据编码成JSON,但我遇到了不少麻烦。我相信这个问题只是一个误会。

我对Python比较陌生,从来没有真正熟悉过各种Python数据类型,所以这很可能是困扰我的地方。

目前,我正在声明一个列表,循环遍历另一个列表,并将一个列表附加到另一个列表中:

代码语言:javascript
复制
import simplejson, json
data = [['apple', 'cat'], ['banana', 'dog'], ['pear', 'fish']]

x = simplejson.loads(data)
# >>> typeError: expected string or buffer..

x = simplejson.dumps(stream)
# >>> [["apple", "cat"], ["banana", "dog"], ["pear", "fish"]]
# - shouldn't JSON encoded strings be like: {{"apple":{"cat"},{"banana":"dog"}}

所以我要么:

  • 我不理解JSON语法
  • 我不理解Pythons模块
  • 我使用了不适当的数据类型。
EN

Stack Overflow用户

发布于 2009-06-11 23:07:37

我认为您只是在交换转储和负载。

代码语言:javascript
复制
>>> import json
>>> data = [['apple', 'cat'], ['banana', 'dog'], ['pear', 'fish']]

第一个函数以(JSON编码)字符串的形式返回其数据参数:

代码语言:javascript
复制
>>> encoded_str = json.dumps( data )
>>> encoded_str
'[["apple", "cat"], ["banana", "dog"], ["pear", "fish"]]'

第二个则相反,返回与其(JSON编码的)字符串参数对应的数据:

代码语言:javascript
复制
>>> decoded_data = json.loads( encoded_str )
>>> decoded_data
[[u'apple', u'cat'], [u'banana', u'dog'], [u'pear', u'fish']]
>>> decoded_data == data
True
票数 27
EN
查看全部 7 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/983855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档