You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从包含字典的列表中提取指定元素?请求提供获取USD对应available值的Python代码

提取列表中指定symbol对应的available值

这里有几种实用的Python实现方式,你可以根据自己的场景需求来选择:

方法1:基础循环遍历(最直观,适合新手)

这种方法逻辑清晰易懂,找到目标项后立刻退出循环,避免不必要的遍历操作:

d = [{'symbol': 'ETH', 'available': '1'}, {'symbol': 'DOGE', 'available': '4'}, {'symbol': 'USD', 'available': '10'}]

usd_available = None
for item in d:
    if item['symbol'] == 'USD':
        usd_available = item['available']
        break  # 找到匹配项后停止循环

print(usd_available)  # 输出结果:'10'

方法2:列表推导式(简洁写法)

用列表推导式快速筛选出符合条件的available值,代码更紧凑,但如果列表中没有symbol为USD的项,会触发索引错误:

d = [{'symbol': 'ETH', 'available': '1'}, {'symbol': 'DOGE', 'available': '4'}, {'symbol': 'USD', 'available': '10'}]

usd_available = [item['available'] for item in d if item['symbol'] == 'USD'][0]
print(usd_available)  # 输出结果:'10'

方法3:使用next()函数(高效且安全)

这是更推荐的写法,它会在找到第一个匹配项时就停止迭代,还能设置默认值,避免找不到目标时抛出异常:

d = [{'symbol': 'ETH', 'available': '1'}, {'symbol': 'DOGE', 'available': '4'}, {'symbol': 'USD', 'available': '10'}]

# 第二个参数是默认值,如果没有找到USD则返回None
usd_available = next((item['available'] for item in d if item['symbol'] == 'USD'), None)
print(usd_available)  # 输出结果:'10'

如果你的数据里可能存在多个symbol为USD的项,可以根据需求调整逻辑——比如收集所有匹配的available值,而上面的方法默认取第一个匹配项。

内容的提问来源于stack exchange,提问作者Mohamed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 17:27:47