python - Python - Dataframes 循环和执行 API 调用
问题描述
python的新手并尝试根据先前API的输出执行一系列API,在此过程中我遇到了以下问题。
我在数据框中有一些值,我想根据条件(全部大于或等于 1)遍历数据框,并从数据框中获取 id(满足条件)并执行 API URL
数据框
Index | id | all
0 | 1 | 1
1 | 2 | 0
2 | 3 | 5
3 | 4 | 2
4 | 5 | 0
5 | 6 | 0
6 | 7 | 3
7 | 8 | 4
代码
alert = '/alert'
for value in dataframe['all']:
if value >= 1:
for each in dataframe['id']:
url1 = "https://mywebsite/new/"+str(each)+str(alert)
response1 = requests.get(url=url1, headers=headers, params=querystring1).json()
print(response1)
print("New ID :" +str(each))
else:
print("No alerts id are :" +str(value))
问题是我得到了响应,但它没有通过条件,它显示id
2 和 6 的响应,其all
值为 0,并且循环也永远不会中断。
任何人都可以让我知道我在做什么错误
解决方案
弄清楚了:
以下代码对我有用。
for index, value in dataframe.iterrows():
if value['all'] > 0:
url1 = "https://mywebsite/new/"+str(value['id'])+str(alert)
response1 = requests.get(url=url1, headers=headers, params=querystring1).json()
print(response1)
print("New ID :" +str(value['id']))
推荐阅读
- scala - 带有布尔默认值的 Scala 中带有 getOrElse 的选项
- memory - 运行时内存(EXE、DLL)损坏
- php - LiipImagineBundle 不使用过滤器渲染图像
- amazon-web-services - 站点无法通过 LTE 访问,但可以通过 WiFi 正常工作 - AWS Route53
- r - 当目录未知时测试路径上是否存在可执行文件
- go - 为什么无法加载 golang/protobuf/proto
- angular - 基于Angular 8中的用户类型重定向
- typescript - 在打字稿中使用 globalThis
- arduino - 如何在 Arduino 草图中获取多维数组的大小?
- java - 将数据集写入 MS SQL 服务器失败