gpt4 book ai didi

python - 从 Python 中的非协程函数运行协程函数?

转载 作者:行者123 更新时间:2023-12-01 03:04:13 30 4
gpt4 key购买 nike

我正在使用discord.py 与discord 进行交互。

def hi():
await client.send_message(channel, message)

出现语法错误,除非我在使用 hi() 函数时编写“async”。我真的不明白这个,请帮忙!

最佳答案

您可以在事件循环中安排协程。您不能从非协程内部调用它们或等待它们。

让我们检查以下代码:

import asyncio


async def greetLater(name, delay):
await asyncio.sleep(delay)
print("Hello {}!".format(name))


def main():
loop = asyncio.get_event_loop()
loop.run_until_complete(greetLater("masnun", 10))


if __name__ == '__main__':
main()

在上面的代码中,greetLater是一个协程。我们不能直接从 main 函数中调用它。我们在这里需要做的是创建一个事件循环,然后在那里调度协程。我们使用asyncio模块来帮助我们创建事件循环并运行协程。

更多引用:

(免责声明:链接到我关于该主题的个人博客文章,您可以通过谷歌搜索更多引用资料)

关于python - 从 Python 中的非协程函数运行协程函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43562014/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com