题:程序里保存了一组单词,每轮游戏中程序从这些单词里随机选出一个。一轮游戏包含若干回合,每个回合开始时,程序从单词中随机选出一个字母,输出该字母及其在单词里的位置作为提示。如果用户认为已经猜到,就输入所猜单词,前面加一个感叹号”!”,程序评判对错并记录有关记录。如果用户无法猜出结果,可以输入问号”?”,要求程序继续给出提示。输入“quit”时程序结束并输出一组信息:本次游戏共猜了几个单词,正确和错误的次数,平均每个单词要求了几轮提示。
代码:
import random
WORDS=( ['apple', 'pear', 'peach', 'orange', 'lemon','python','hello'] ) ##创建单词序列元组(单词库)
print(
"""
欢迎参加猜单词游戏
""") ##显示游戏欢迎界面
iscontinue = "yes"
right=0 ##正确单词数
wrong=0 ##错误单词数
w=0 ##猜了几次单词
t=1 ##有几次提示
while iscontinue=="yes":
w=w+1
word = random.choice(WORDS) ##从序列中随机挑选出一个单词
n=random.choice(word)
print("单词中的一个字母是",n)
print("单词中该字母的位置在第{0}位".format(word.index(n)+1))
guess = input("\n请猜测:") ##玩家猜测单词
while guess != word and guess != "":
wrong=wrong+1
print("\n猜测错误,请输入'?'继续猜题或输入'quit'结束猜测该单词!")
jixu= input("\n请输入:")
if jixu=="?": ##用户输入'?'则继续给出提示
t=t+1
n=random.choice(word)
print("单词中的另一个字母是",n)
print("单词中该字母的位置在第{0}位".format(word.index(n)+1))
elif jixu=="quit":
iscontinue=="quit"
break
if guess == word:
right=right+1
print("\n真棒,你猜对了!")
break
iscontinue = input("\继续输入yes,结束请输入'quit':")
while iscontinue=="quit":
print("本次游戏共猜了{0}个单词,正确{1}次,错误{2}次,平均每个单词要求了{3}轮提示".format(w,right,wrong,t))
你都没有给while结束语句,肯定会无限循环的。