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

如何在命令行中运行Python的asyncio.run()?

解答

关于命令行运行方式与事件循环的确认

  1. 你的现有代码已正确启动事件循环
    你使用的python3 -m main.main(更标准的写法是python3 -m main或直接python3 main.py)能正常运行,是因为代码里的if __name__ == '__main__': asyncio.run(main())分支被触发。asyncio.run()的核心作用就是创建并管理事件循环,会在传入的协程执行完成后自动关闭循环,所以这种方式肯定启动了事件循环,完全符合需求。

  2. 为什么python3 -m asyncio.run(main.main)无效
    python -m参数后需要跟模块名,而asyncio.run是asyncio模块下的一个函数,并非可独立运行的模块,因此该命令语法本身不成立,无法执行。

  3. 其他命令行直接调用asyncio.run的方式
    若不想依赖代码里的if __name__ == '__main__'分支,也可以用python3 -c直接在命令行执行代码:

    python3 -c "import asyncio; from main import main; asyncio.run(main())"
    

    这条命令会导入你的main协程函数,通过asyncio.run()启动事件循环并执行协程。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 05:56:04