Hangman游戏while循环报错:'split'未定义函数问题求助
问题排查与修复:Hangman游戏的输入循环错误
嘿,这个问题一眼就能找到症结!咱们来拆解一下:
错误根源
在你输入多单词触发循环后,第二次输入单词的代码里有个关键疏忽:
answer = input("Type word here: ").lower
这里你写的是.lower而不是.lower()——这意味着你没有调用字符串的lower()方法来转换为小写,反而把lower这个方法对象本身赋值给了answer变量。当后续执行word_amount = len(answer.split())时,方法对象并没有split()方法,自然就会抛出“split未定义函数”的错误。
修复后的完整输入校验代码
把循环内的.lower改成.lower(),同时还有个小优化:不需要把word_amount转成float来比较,直接用整数对比更简洁合理:
answer = input("Type word here: ").lower() word_amount = len(answer.split()) maximum_words = 1 while maximum_words != word_amount: print("False input, 1 Word only!") # 修复:调用lower()方法而非引用方法本身 answer = input("Type word here: ").lower() word_amount = len(answer.split())
额外小提示
你的代码里那个计数到20的循环看起来像是测试残留,可以考虑删掉或者注释掉,避免干扰正常游戏流程~
内容的提问来源于stack exchange,提问作者Erik the Wall
相关产品推荐
相关产品推荐

