python实现简单猜单词游戏

本文实例为大家分享了python实现猜单词游戏的具体代码,供大家参考,具体内容如下

电脑根据单词列表随机生成一个单词,打印出这个单词长度个 ‘ _ ' ,玩家随机输入一个这个单词可能包含的英文字母,如果玩家猜对了,电脑则会在正确的空格处填写这个字母,如果没有猜对,游戏次数就减一。如果玩家在游戏次数减为零前猜对这个单词的所有字母,则玩家获胜,否则玩家输掉比赛。

from random import*

words = 'tiger lion wolf elephant zebra ducksheep rabbit mouse'.split()

#得到要猜的神秘单词

def getWord(wordList):

n = randint(0,len(wordList)-1)

return wordList[n]

#游戏界面

def display(word,wrongLetters,rightLetters,chance):

print('你还有{:n}次机会'.format(chance).center(40,'-'))

print('已经猜错的字母:'+ wrongLetters)

print()

blanks = '_'*len(word)

for i in range(len(word)):

if word[i] in rightLetters:

blanks = blanks[:i] + word[i] +blanks[i+1:]

for i in blanks:

print(i+' ',end='')

print()

print()

#从玩家的输入得到一个猜测的字母

def getLetter(alreadyGuessed):

while True:

print('请输入一个可能的字母:')

guess = input()

guess = guess.lower()

if guess[0] in alreadyGuessed:

print('你已经猜过这个字母了!')

elif guess[0] not in 'qwertyuiopasdfghjklzxcvbnm':

print('请输入一个英文字母!(a-z)')

else:

return guess[0]

#是否再玩一次

def playAgain():

print('是否在玩一次?(y/n)')

s = input()

s = s.lower()

if s[0] == 'y':

return 1

return 0

#游戏初始化

wrongLetters = ''

rightLetters = ''

word = getWord(words)

chance = 6 #初始为6次机会

done = False

while True:

display(word,wrongLetters,rightLetters,chance)

guess = getLetter(wrongLetters+rightLetters)

if guess in word:

rightLetters = rightLetters+ guess

foundAll = True

for i in range(len(word)):

if word[i] not in rightLetters:

foundAll = False

break

if foundAll:

print('你真棒,这个单词就是'+ word +',你赢了!')

done = True

else:

wrongLetters = wrongLetters + guess

chance = chance - 1

if chance == 0:

display(word,wrongLetters,rightLetters,chance)

print("你已经没有机会了!你一共猜错了"+str(len((wrongLetters))+"次,猜对了"+str(len(rightLetters))+"次,正确的单词是:"+ word)

done = True

if done:

if playAgain():

wrongLetters = ''

rightletters = ''

word = getWord(words)

chance = 6 #初始为6次机会

done = 0

else:

break

再为大家提供一段代码:python猜单词游戏,作为补充,感谢原作者的分享。

import random

WORDS = ("math","english","china","history")

right = 'Y'

print("欢迎参加猜单词游戏!")

while right=='Y' or right=='y':

word=random.choice(WORDS)

correct=word

newword = ''

while word:

pos=random.randrange(len(word))

newword+=word[pos]

#将word单词下标为pos的字母去掉,取pos前面和后面的字母组成新的word

word = word[:pos]+word[(pos+1):] #保证随机字母出现不会重复

print("你要猜测的单词为:",newword)

guess = input("请输入你的答案:")

count=1

while count<5:

if guess!=correct:

guess = input("输入的单词错误,请重新输入:")

count+=1

else :

print("输入的单词正确,正确单词为:",correct)

break

if count == 5:

print("您已猜错5次,正确的单词为:",correct)

right = input("是否继续,Y/N:")

以上是 python实现简单猜单词游戏 的全部内容, 来源链接: utcz.com/z/331982.html

回到顶部