在列表中过滤字典中的项目

时间:2020-10-08 14:51:47

标签: python

我搜索了这个问题,发现了许多类似的问题,但是..我都无法理解答案或可以转化为用例。

我知道如何过滤像这样的{"type":"hello"}响应, response['type']
>>> hello
但是当我得到这个[{"mail_address":"hello@mail.com"}]时,我有点迷路了。 我已经尝试了几种方法,但最后确定的解决方案却有点丑陋……

res= [{"mail_address":"hello@mail.com"}]  <-- using request method>
body = (res.text)
a = body[18:100]    <--- 100, because I don't really know the length of the mail>
b = ''.join(a.split())
foo = b[:-3]
print(foo)
>>> hello@mail.com

我想知道,必须有更好的\更清洁的方式吗?

1 个答案:

答案 0 :(得分:3)

如果您确实从某个网络调用中获得了看起来像是JSON字符串的响应,那么以下内容可能会有所帮助。

import json

s = '[{"mail_address":"hello@mail.com"}]'  # from resp.text

o = json.loads(s)

print(o[0]['mail_address'])