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

Python如何替换字符串中指定字符?Hangman游戏开发作业相关问题

Python Hangman猜词游戏字符串替换问题解决方案

问题根源

  • Python 字符串是不可变对象,无法直接修改指定下标位置的单个字符
  • 原代码调用的replace方法是全局替换,只要是下划线都会被替换成目标字符,无法实现指定位置修改的需求
  • 嵌套循环逻辑冗余,直接用in关键字就能判断字符是否在已猜字母列表中,不需要二层遍历

正确实现方案

优先把待处理内容存为可变的列表类型,处理完成后再拼接为字符串输出,代码如下:

def show_hidden_word(secret_word, old_letters_guessed):
    # 初始化等长列表,每个位置默认显示下划线
    show_list = ['_' for _ in range(len(secret_word))]
    for idx in range(len(secret_word)):
        if secret_word[idx] in old_letters_guessed:
            # 列表支持直接修改指定下标元素
            show_list[idx] = secret_word[idx]
    # 用空格拼接列表得到带空格的输出格式
    printage = ' '.join(show_list)
    print(printage)

# 测试用例
show_hidden_word('house', ['s', 'p', 'j', 'i', 'm', 'k'])

运行上述代码,测试用例的输出结果为:_ _ _ _ s,符合预期。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 19:48:03