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

使用asyncio.sleep()触发RuntimeWarning及tracemalloc命令问题求助

问题解决指南

1. 修复asyncio.sleep协程未等待的错误

你使用的asyncio.sleep()是协程函数,不能直接像普通函数那样调用,以下两种方案任选其一:

方案一:改用同步的time.sleep(简单直接,适合无异步需求的场景)

替换原代码的导入和打印函数:

# 替换原asyncio导入为time
import time
from keyboard import wait

# ... 用户名验证部分代码不变 ...

def dramatic_print(string, time=0.25):
    for letter in string:
        print(f"{letter}", end="", flush=True)  # 强制刷新输出,避免字符缓冲
        time.sleep(time)

方案二:正确使用asyncio异步机制(保留asyncio.sleep的场景)

需要将打印函数改为异步函数,并通过事件循环启动:

from asyncio import sleep, run
from keyboard import wait

# ... 用户名验证部分代码不变 ...

async def dramatic_print(string, time=0.25):
    for letter in string:
        print(f"{letter}", end="", flush=True)
        await sleep(time)  # 用await等待协程执行

# 调用异步函数时必须启动事件循环
run(dramatic_print("欢迎来到星际冒险游戏..."))

2. 修复python3命令未识别的问题

Windows系统中,Python的默认调用命令是python而非python3,执行tracemalloc的正确命令是:

python -X tracemalloc

如果仍然报错,检查Python安装时是否勾选了Add Python to PATH选项,未勾选的话需要手动将Python安装路径添加到系统环境变量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 08:52:20