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

Python循环处理CMC API响应:将多个JSON结果合并至单个列表

解决CoinMarketCap API响应合并到单个列表的问题

你的代码问题在于每次循环都重新初始化了test列表,导致每个API响应都被存入单独的新列表中。只需调整test的初始化位置,并简化冗余代码,就能实现将所有响应合并到一个列表的需求。

修改后的代码

import requests

# 提前初始化存储所有响应的列表(关键:放在循环外部)
test = []
headers = {"X-CMC_PRO_API_KEY": "你的API密钥"}  # 替换为你的实际CMC API密钥
nameList = ["BTC", "ETH"]  # 示例加密货币符号列表

for symbol in nameList:
    # 直接构造目标URL,无需额外的urlList
    url_symbol = f"https://pro-api.coinmarketcap.com/v1/cryptocurrency/info?symbol={symbol}"
    response = requests.get(url_symbol, headers=headers)
    # 将当前响应追加到全局的test列表中
    test.append(response.content)

# 输出合并后的结果
print(test)
print(type(test))

核心修改说明

  • 将test = []移到循环外部:确保整个循环过程中使用同一个列表,所有响应都会追加到这个列表里
  • 移除冗余的urlList和内层循环:每次循环只需要针对当前symbol构造URL并请求,无需额外封装成列表再循环
  • 保持append操作:每次请求后将响应内容追加到test,最终得到包含所有加密货币信息的单个列表

执行修改后的代码,输出会符合你的期望:

[b'{"status":{"timestamp"...}, b'{"status":{"timestamp"...}]

内容的提问来源于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 09:53:01