Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python中的JSON数据格式_Python_Json_Oracle_Python 2.7 - Fatal编程技术网

Python中的JSON数据格式

Python中的JSON数据格式,python,json,oracle,python-2.7,Python,Json,Oracle,Python 2.7,我正在从数据库表中检索多个列。其中一个列名是包含JSON数据的值。如果我从数据库中选择唯一的值列,那么我将获得以下格式的记录 value = (u'{"time":["9599","MS"],"What is your birth place?":["USA"]}',) 但是,如果选择“值列”和“其他列”,则会得到以下格式的记录: value = {"time":["9599","MS"],"What is your birth place?":["USA"]} 我需要第一种格式的值,因为我

我正在从数据库表中检索多个列。其中一个列名是包含JSON数据的值。如果我从数据库中选择唯一的值列,那么我将获得以下格式的记录

value = (u'{"time":["9599","MS"],"What is your birth place?":["USA"]}',)
但是,如果选择“值列”和“其他列”,则会得到以下格式的记录:

value = {"time":["9599","MS"],"What is your birth place?":["USA"]}
我需要第一种格式的值,因为我想用下面的代码将键和值对从数据中分离出来

dict = json.loads(value[0])
dict.keys()
dict.values()
我的输出应该如下所示

Keys
-----
time 
What is your birth place?

Value:
------
9599 
MS
USA

如何将数据从第二种格式转换为第一种格式?

您只需在
value
上调用
str()
,然后创建所需的元组:

value = {"time":["9599","MS"],"What is your birth place?":["USA"]}
value = (str(value),)
print value
>> ("{'What is your birth place?': ['USA'], 'time': ['9599', 'MS']}", )
EDIT:实际上最好使用
json.dumps()
,它接受Python字典并返回
json
字符串:

value = {'time':['9599','MS'],'What is your birth place?':['USA']}

import json

value = (json.dumps(value),)
print value
>> ('{"What is your birth place?": ["USA"], "time": ["9599", "MS"]}', )

对于第二种格式,不要
value.keys()
value.values()
实现您想要的功能?