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

如何在Python中动态获取CoinMarketCap API返回JSON的加密货币ID?

解决CoinMarketCap API动态获取多币种ID的问题

核心逻辑是:CoinMarketCap API返回的data字段是一个以币种符号为键的字典,不管返回1个还是多个币种,直接遍历这个字典的所有值,提取每个值里的id字段即可,无需硬编码币种符号。

代码实现示例

首先模拟API返回的多币种响应数据(和真实接口返回结构一致):

# 模拟CoinMarketCap API的响应结果
api_response = {
    "status": {
        "timestamp": "2024-05-20T12:34:56Z",
        "error_code": 0
    },
    "data": {
        "BTC": {"id": 1, "name": "Bitcoin", "symbol": "BTC"},
        "ETH": {"id": 1027, "name": "Ethereum", "symbol": "ETH"}
    }
}

方式1:直接提取所有ID并按要求格式输出

# 动态获取所有币种的ID
crypto_ids = [item["id"] for item in api_response["data"].values()]

# 输出为逗号分隔的字符串
print(", ".join(map(str, crypto_ids)))  # 输出结果:1, 1027

方式2:同时获取币种符号和对应的ID

如果需要关联符号和ID,可以遍历字典的键值对:

for symbol, crypto_info in api_response["data"].items():
    print(f"{symbol} 对应的ID是:{crypto_info['id']}")
# 输出:
# BTC 对应的ID是:1
# ETH 对应的ID是:1027

说明

不管API返回1个还是N个币种数据,这个逻辑都能适配,因为它不依赖具体的币种符号(比如硬编码'BTC'),而是直接遍历data下的所有条目,完全动态处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 12:55:21