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

Python中如何将标识符列表传入API参数?

解决同一API参数传入多个值的问题

你的代码存在几个明显问题:

  1. 列表定义语法错误:query = [1, 2, 3, 4, 5) 应修正为 query = [1, 2, 3, 4, 5]
  2. 参数传递方式错误:("q", {value}) 写法无效,且value未定义,同时requests不支持这种多值参数的传递格式

在requests库中,给同一参数传递多个值有两种标准实现方式:

方式一:在参数元组列表中重复添加同一参数名

将每个q的取值单独作为("q", 值)的元组,加入到参数列表中:

import requests

query = [1, 2, 3, 4, 5]
headers = {"apikey": "apikey"}

# 先定义固定参数,再遍历添加所有q的取值
params = [
    ("gl", "US"),
    ("hl", "en")
]
for val in query:
    params.append(("q", val))

response = requests.get('url', headers=headers, params=params)
print(response.text)

方式二:使用字典传递,参数值设为列表

requests会自动将字典中列表类型的参数值,转换为同一参数名重复出现的格式:

import requests

query = [1, 2, 3, 4, 5]
headers = {"apikey": "apikey"}

params = {
    "gl": "US",
    "hl": "en",
    "q": query  # 直接传入列表类型的参数值
}

response = requests.get('url', headers=headers, params=params)
print(response.text)

两种方式最终都会生成格式为?gl=US&hl=en&q=1&q=2&q=3&q=4&q=5的请求URL,符合API接收多值参数的标准规范。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 11:28:06