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

Scrabble拼字游戏Python代码排错:word_list字母未删除问题

错误原因
  • 核心bug出在条件判断语句:代码中if char == word_list:是将单个字符与整个列表做相等比较,该判断永远不成立,因此word_list中的元素永远不会被删除,无法得到正确结果。仅需要将该条件修改为if char in word_list:,即可完成核心逻辑修复。
  • 原有字符串转列表的写法可以简化,直接用rack_list = list(rack)、word_list = list(word)即可,和原有逻辑完全等价,代码可读性更高。
修复后完整代码
#Problem 1
# 输入获取
rack=input("what are the characters in your rack?: ")
word=input("what word would you like to create?: ")
# 转换为列表
rack_list = list(rack)
word_list = list(word)
# 遍历rack字符,移除word_list中匹配的字符
for char in rack_list:
    if char in word_list:
        word_list.remove(char)
# 判断最终结果
can_make_word_bool = len(word_list) == 0
print(can_make_word_bool)
逻辑验证

修复后的代码可以正确处理重复字母场景:比如rack输入为aabcc,word输入为abac,遍历后word_list会被全部删除,返回True;如果word输入为aaa,最终word_list会剩余1个a,返回False,符合Scrabble拼字规则要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 01:39:03