【发布时间】:2021-10-07 08:39:21
【问题描述】:
我正在尝试通过 API 调用查找应用程序结果列表。
我遇到了需要将应用程序 ID 作为字符串参数传递的问题,而不是一次传递一个,我想一次迭代所有 ID。
这是关于如何查找一个 application_id 的示例代码
result = lookup_api.list(application_id = "{{APP_ID}}""
if result['status'] == 200:
print(result['data'])
else:
print("An error occurred." + str(result['status']))
print(result['data'])
如果我有一个应用程序 ID 列表,即,
app_id=['10000001','10000002','10000003','10000004']
我想迭代lookup_api.list 中的所有应用程序ID(作为字符串),您知道如何实现吗?
我试过了
index = 0
while index < len(app_id):
result = [lookup_api.list(application_id=app_id[i]) for i in range(len(app_id))]
index += 1
if result['status'] == 200:
print(result['data'])
else:
print("An error occurred." + str(result['status']))
print(result['data'])
但它没有迭代我的应用程序列表。我得到 "TypeError: list indices must be integers or slices, not str" on if result['status'] == 200.
在这里提前感谢您的帮助!
【问题讨论】:
-
for i in range(len(app_id)): result = lookup_api.list(application_id=app_id[i])
-
我将其更改为上述查询,现在我可以提取结果,但它只显示我列表中的最后一个应用程序,关于如何获取所有应用程序 ID 的任何想法?
-
您可能想查看 python 列表理解:
result = [ lookup_api.list(application_id=app_id[i]) for i in range(len(app_id)) ] -
@etherealyn 谢谢!我刚刚用列表理解进行了测试,但它返回了另一个错误消息,说“列表索引必须是整数或切片,而不是 str”,知道为什么吗?请提前为您提供帮助。
-
这是因为您正在遍历字符串列表并将它们用作索引,这是不允许的。也许,尝试直接使用应用程序 ID,例如:
result = [lookup_api.list(application_id=x) for x in app_id]
标签: python list loops iterator