我是编程的新手,并且我的第一个任务是在python中出现。我正在写一个刽子手型游戏,用户需要猜测从其他用户输入的单词。
我已经编写了大部分代码,但我遇到的唯一问题是当用户必须输入单词时,确保它仅限于字母表。我到目前为止的代码是:
word = str.lower(raw_input("Type in your secret word! Shhhh... "))
answer = True
while answer == True:
for i in range(len(word)):
if word[i] not in ("abcdefghijklmnopqrstuvwxyz"):
word = raw_input("Sorry, words only contain letters. Please enter a word ")
break
else:
answer = False
这在我输入几次尝试时有效,但最终会退出循环或显示错误。有没有更简单的方法来使用它?我们真的只涵盖了课堂上的循环,而破坏和继续对我来说也是一个新事物。谢谢! (请原谅,如果代码很草率,但正如我所说,我对此很新......)
答案 0 :(得分:5)
这也可以 - 只要你不介意有大写和小写字符
if word[i].isalpha():
为了使事情更简单,正如评论中所建议的那样:
if word.isalpha():
通过这种方式,您不必遍历每个字符,只需检查整个单词