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

如何修改已打印字符串?刽子手(Hangman)游戏界面更新求助

刽子手(Hangman)游戏优化方案:动态更新显示内容
  • 维护动态显示列表
    别直接打印固定的下划线字符串,用一个列表保存当前显示状态,初始时列表元素全是下划线,长度和目标单词一致。每次用户猜中字母,就遍历目标单词,把对应位置的下划线替换成该字母,之后每次都重新打印这个列表拼接成的字符串。

  • 刷新控制台实现界面更新
    每次用户输入后,先清空控制台再重新打印所有游戏状态,不同系统的清屏命令可以做兼容处理:

    • Windows系统用os.system('cls')
    • Linux/macOS系统用os.system('clear')
      清屏后重新输出刽子手图形、已猜字母列表、当前的下划线/已猜中字母组合,就能实现“刷新”的效果。
  • 参考代码片段

    import os
    
    target_word = "hangman"
    display_list = ["_"] * len(target_word)
    guessed_letters = []
    
    while True:
        # 跨系统清屏
        os.system('cls' if os.name == 'nt' else 'clear')
        # 打印当前的单词显示状态
        print(" ".join(display_list))
        # 打印已猜过的字母
        print(f"已猜字母: {', '.join(guessed_letters) if guessed_letters else '无'}")
        # 获取用户输入
        user_guess = input("请输入一个字母: ").strip().lower()
        
        if user_guess in guessed_letters:
            print("这个字母已经猜过了!")
            input("按回车继续...")
            continue
        
        guessed_letters.append(user_guess)
        
        # 更新显示列表
        if user_guess in target_word:
            for index, char in enumerate(target_word):
                if char == user_guess:
                    display_list[index] = user_guess
        
        # 这里可补充游戏胜利/失败的判断逻辑
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 05:05:28