我有一个类似
的元组mytuple = ('somevalue', 99999, 'jjj', 99)
从这个元组中我想像
{
"key1":'somevalue',
"key2":'99999,
"key3":'jjj',
"key4":99
}
键的数量不是恒定的,它们可以更改,键的值和数量也等于对象的数量
我尝试过
data = {}
for i in range(0,maxLen):
key = keydata[0][i]
value = valuedata[0][i]
data[key] = data[value]
我在创建json时遇到关键错误
答案 0 :(得分:0)
您可以使用enumerate(..)
获取索引。因此,我们可以构建一个像这样的字典:
{ 'key{}'.format(i): v for i, v in enumerate(mytuple, 1) }
然后我们可以使用json.dumps
来检索JSON blob:
>>> json.dumps({ 'key{}'.format(i): v for i, v in enumerate(mytuple, 1) })
'{"key1": "somevalue", "key2": 99999, "key3": "jjj", "key4": 99}'
请注意,您提供的JSON无效,因为JSON字符串被双引号引起来(所以"…"
),而且您的99999
也有单引号('
) 在前。例如,您可以使用jsonlint之类的服务对此进行验证。有效的JSON Blob例如:
{
"key1": "somevalue",
"key2": 99999,
"key3": "jjj",
"key4": 99
}
除了格式化外,它与这里构造的相同,但是,例如,当您获取数据时,仅开销。