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

Hangman游戏猜字母功能异常,如何实现精准位置替换?

解决Hangman游戏中精准替换字母位置的问题

你的核心问题在于误用了字符串的replace()方法——这个方法会替换所有匹配的字符,而非指定位置的单个字符,再加上Python字符串是不可变类型,直接替换会导致全局修改。

修改思路

  1. 初始化隐藏单词时,直接生成与目标单词长度一致的下划线列表(列表是可变类型,方便修改指定位置)
  2. 匹配到用户输入的字母时,直接修改列表对应索引的元素,而非调用字符串替换方法

修改后的完整代码

word = "hello"
# 初始化下划线列表,长度和目标单词一致
hiddenWord = ["_"] * len(word)

userInput = input("Enter letter: ")

# 遍历目标单词的每个索引
for i in range(len(word)):
    if word[i] == userInput:
        # 精准修改对应位置的元素
        hiddenWord[i] = userInput

# 将列表转为字符串后输出
print("".join(hiddenWord))

测试效果

输入l时,输出会是__ll_,符合预期;后续输入h会变成h_ll_,可以逐步完成单词拼接。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 15:24:23