如何使用python从响应中获取键,值并将其附加。

时间:2019-11-13 07:32:26

标签: python json

我有这种格式的响应,并使用python代码获取键和值。

def test()
data={u'Application': u'e2e', u'Cost center': u'qwerty', u'Environment': u'E2E', u'e2e3': u'aktest1', u'e2etes

for k,v in data.items():
    new = {}
print('forloop before')
for k,v in data.items():
    print (k)
    print (v)
    new["key"] = k
    new["tags"] = []
for d in v:
    flds = list(d)
    new["tags"].append({"key": k, "values": flds})
    print(new["tags"])
test()

我将输出为   [{'key':'S68e2e','values':['f']},{'key':'S68e2e','values':['u']},{'key':'S68e2e', 'values':['n']},{'key':'S68e2e','values':['c']},{'key':'S68e2e','values':['t']} ,{'key':'S68e2e','values':['i']},{'key':'S68e2e','values':['o']},{'key':'S68e2e', 'values':['n']}]

这是不正确的。

2 个答案:

答案 0 :(得分:1)

取决于是python 2还是python 3,您应该执行以下操作:

# Python 2
for k,v in data.iteritems():
   ...
# Python 3
for k,v in data.items():
   ...

this SO线程中查看有关.items().iteritems()的更多详细信息。

答案 1 :(得分:1)

您需要使用data.items()

for k, v in data.items():
    print(f'{k}: {v}')

输出

app: e2e
Cost: qwerty
Environment: E2E
e2e3: test
e2etest: at2
Se2e: function