如何从Python API返回的字典列表中提取url值?
提取列表中字典的URL值解决方案
嘿,我来帮你搞定这个问题!你遇到的问题很典型——你拿到的resp是一个包含多个字典的列表,而不是单个字典,所以直接用resp["url"]肯定会报错,因为列表是通过索引访问元素,不能直接用字典的键来取值。
这里有两种简单的方法可以得到你想要的[url1_goes_here, url2_goes_here]格式的结果:
方法1:列表推导式(最简洁推荐)
这是Python里处理这类需求最常用的方式,一行代码就能搞定:
urls = [item['url'] for item in resp]
它的逻辑是:遍历resp列表里的每一个字典元素item,把每个item里的'url'值提取出来,自动组成一个新的列表。
方法2:普通循环(适合新手理解)
如果你想更清晰地看到每一步的操作,可以用基础的for循环来实现:
urls = [] # 先创建一个空列表 for item in resp: urls.append(item['url']) # 把每个字典里的url添加到列表中
执行完这段代码后,urls变量就会存储所有提取出来的URL了。
小提示
如果之后遇到类似的API返回数据,不确定结构的话,可以先打印type(resp)看看它是列表还是字典,或者直接print(resp)输出完整数据,确认要提取的字段在哪个层级里。
内容的提问来源于stack exchange,提问作者sabrina
相关产品推荐
相关产品推荐

