python实现简单猜单词游戏

python教程

共 2278字,需浏览 5分钟

 · 2020-12-29

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

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

  1. from random import*

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

  3. #得到要猜的神秘单词

  4. def getWord(wordList):

  5. = randint(0,len(wordList)-1)

  6. return wordList[n]

  7. #游戏界面

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

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

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

  11. print()

  12. blanks = '_'*len(word)

  13. for i in range(len(word)):

  14. if word[i] in rightLetters:

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

  16. for i in blanks:

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

  18. print()

  19. print()

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

  21. def getLetter(alreadyGuessed):

  22. while True:

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

  24. guess = input()

  25. guess = guess.lower()

  26. if guess[0] in alreadyGuessed:

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

  28. elif guess[0] not in 'qwertyuiopasdfghjklzxcvbnm':

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

  30. else:

  31. return guess[0]

  32. #是否再玩一次

  33. def playAgain():

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

  35. = input()

  36. = s.lower()

  37. if s[0] == 'y':

  38. return 1

  39. return 0

  40. #游戏初始化

  41. wrongLetters = ''

  42. rightLetters = ''

  43. word = getWord(words)

  44. chance = 6 #初始为6次机会

  45. done = False

  46. while True:

  47. display(word,wrongLetters,rightLetters,chance)

  48. guess = getLetter(wrongLetters+rightLetters)

  49. if guess in word:

  50. rightLetters = rightLetters+ guess

  51. foundAll = True

  52. for i in range(len(word)):

  53. if word[i] not in rightLetters:

  54. foundAll = False

  55. break

  56. if foundAll:

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

  58. done = True

  59. else:

  60. wrongLetters = wrongLetters + guess

  61. chance = chance - 1

  62. if chance == 0:

  63. display(word,wrongLetters,rightLetters,chance)

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

  65. done = True

  66. if done:

  67. if playAgain():

  68. wrongLetters = ''

  69. rightletters = ''

  70. word = getWord(words)

  71. chance = 6 #初始为6次机会

  72. done = 0

  73. else:

  74. break

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

  1. import random

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

  3. right = 'Y'

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

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

  6. word=random.choice(WORDS)

  7. correct=word

  8. newword = ''

  9. while word:

  10. pos=random.randrange(len(word))

  11. newword+=word[pos]

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

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

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

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

  16. count=1

  17. while count<5:

  18. if guess!=correct:

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

  20. count+=1

  21. else :

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

  23. break

  24. if count == 5:

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助

  1. 欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

    万水千山总是情,点个【在看】行不行

  2. *声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事

浏览 27
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报