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
我想知道,一定有更好的\更清洁的方式吗?
解决方案
如果您确实从某些网络调用中获得了看起来是 JSON 字符串的响应,那么以下内容可能会有所帮助。
import json
s = '[{"mail_address":"hello@mail.com"}]' # from resp.text
o = json.loads(s)
print(o[0]['mail_address'])
推荐阅读
- c++ - 为什么这个指针没有给我一个垃圾值
- javascript - 为什么数组中的这段代码不合适?
- python - 播放音乐时的 Python SpeechRecognition
- django - 网站付款:从客户到网站,反之亦然
- mongodb - 带有搜索的 MongoDB 排行榜查询
- reactjs - 如何避免一次又一次地调用 setState 函数?
- android - Flutter MVP错误处理手势时抛出以下NoSuchMethodError
- amazon-web-services - 在 AWS CloudFormation 中使用动态引用
- ruby - 从(可能是多行)字符串中提取第一行
- javascript - 如何解决“元素类型无效”错误?