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

Python隐藏已打印文本实现:记忆游戏5秒后清除指定输出内容问题

实现思路
  • 核心原理是利用控制台的光标回退+空格覆盖逻辑隐藏已打印文本,兼容Windows、Mac、Linux全平台系统
  • 同时修复你现有代码的两个逻辑漏洞:input().upper缺少方法调用括号、答案判断条件冗余的问题
可直接运行的修改后代码
import time
import os

# 兼容Windows系统开启控制台特殊控制符支持
os.system('')

print("Welcome to the memory game.")
print("Choose difficulty level :")
print("1. Easy")
print("2. Medium")
print("3. Hard")
print("4. Very Hard")
x = input("press '1' for easy, '2' for medium, '3' for hard and '4' for very hard :  ")

if x == '1' :
    print("You chose level 1, easy.")
    print("I will give you 3 objects and you have to type then in the correct order to gain points.")
    print("Not cAsE SeNSitIvE")
    target_text = "Ship, Money, Python"
    # 打印待记忆文本,end='\r'表示打印后光标回到当前行开头,不换行
    print(target_text, end='\r')
    time.sleep(5)
    # 用等长空格覆盖当前行的待记忆文本,实现隐藏效果
    print(" " * len(target_text), end='\r')
    # 换行避免后续输入提示覆盖内容
    print()
    # 修复原代码upper未调用的bug
    ez = input().strip()
    # 优化答案判断逻辑:统一去掉所有空格、转大写后对比,无需写多分支条件
    standard_ans = "SHIP,MONEY,PYTHON"
    user_ans = ez.replace(" ", "").upper()
    if user_ans == standard_ans:
        print("Correct")
    else :
        print("Wrong")
        print("The answer was : Ship, Money, Python")
可选扩展方案

如果你需要等待5秒后清空整个控制台所有内容,而不是只隐藏待记忆的单行文本,可以把上面的空格覆盖逻辑替换为跨平台清屏代码:

# 自动判断系统类型执行对应清屏命令
os.system('cls' if os.name == 'nt' else 'clear')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 22:42:00