我试图在Python中将数据编码为JSON,但遇到了很多麻烦。我认为问题仅仅是误解。
我对Python相对较新,并且从未真正熟悉各种Python数据类型,所以这很可能使我感到困惑。
目前,我正在声明一个列表,遍历另一个列表,并将一个列表附加到另一个列表中:
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"}}
所以我要么:
Pythonlists转换为JSON arrays。它给您的是可以在Javascript应用程序中使用的完全有效的JSON字符串。要获得预期的效果,您需要使用dict:
lists
arrays
dict
>>> json.dumps({'apple': 'cat', 'banana':'dog', 'pear':'fish'}) '{"pear": "fish", "apple": "cat", "banana": "dog"}'