无法退出异步循环

2024-09-30 12:13:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图创建一个命令,它在变量benbotLoop设置为2后开始,在beenbotLoop设置为1后停止。但是无论我做什么,它似乎都不会停止循环。这是我的密码:

idint = int(0)
benbotLoop = 1

displayName = input("What's the display name? ")
benbotLoop += 1

async def main():
    global idint
    async with aiohttp.ClientSession() as session:
            async with session.get("http://benbotfn.tk:8080/api/cosmetics/search/multiple", params={"displayName": displayName}) as r:
                data = await r.json()
                json_data = await r.json()
                list_type = json_data[idint]["type"]

                if list_type == "Outfit":
                    list_id = json_data[idint]["id"]
                    benbotLoop = 1
                    print(list_id)
                    print(benbotLoop)
                else:
                    idint += 1


while benbotLoop == 2:
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())

Tags: loopidjsondatagetasyncmainsession
1条回答
网友
1楼 · 发布于 2024-09-30 12:13:36

与尝试在异步函数上使用while循环不同,您需要返回一些信息,让循环知道它已经完成了(loop.run_until_complete(main())),在希望循环结束的地方,放置return

相关问题 更多 >

    热门问题