Python小游戏—猜乱序单词(一)

原创不易,转载前请注明博主的链接地址:Blessy_Zhu https://blog.csdn.net/weixin_42555080
本次代码的环境:
运行平台: Windows
Python版本: Python3.x
IDE: PyCharm

1. 游戏背景

猜单词游戏的游戏规则是:计算机随机产生一个单词,打乱字母的顺序,让玩家去猜,如果玩家猜对了,可以继续游戏,玩家没有猜对既可以选择终止游戏,也可以继续猜,直到猜对为止。
 

Python小游戏—猜乱序单词(一)_第1张图片

2. 代码和结果

废话不多说还是先给出代码:

import random

WORDS = ('modern','internet','computer','difficult','answer','question','improve','many','game','sense')
print("欢迎参加本次游戏,游戏规则是:\n请您猜一下打乱字母顺序的单词,如果才对可以继续游戏,\n如果猜错请继续猜!")
isGo_on = 'Y'
while isGo_on == 'Y' or isGo_on == 'y':
   randomWord = random.choice(WORDS)
   correctWord = randomWord
   jumbleWord = ''
   while randomWord:
       position = random.randrange(len(randomWord))
       jumbleWord += randomWord[position]
       randomWord = randomWord[:position] + randomWord[(position + 1):]
   print('乱序后单词:',jumbleWord)
   guessWord = input('\n请您猜猜看:')
   while guessWord != correctWord and guessWord != '':
       print("不好意思,您猜的不正确。")
       guessWord = input("继续您猜:")
   if guessWord == correctWord:
       print("恭喜您!猜对啦!\n")
   isGo_on = input("\n\n请问是否继续游戏(Y/N):")

玩家猜对单词并选择继续的结果如图1
 


Python小游戏—猜乱序单词(一)_第2张图片
图1

玩家猜错单词的结果如图2
 


Python小游戏—猜乱序单词(一)_第3张图片
图2

3. 代码分析

这个游戏重点有两个问题需要解决:

  • (1)如何随机产生单词游戏中需要随机产生单词
  • (2)如何将产生的单词变为乱序的单词

针对这两个问题分别给出解决思路:
对于问题(1)游戏中随机产生单词可以通过random库随机数函数中的random.choice()函数从序列中随机选取元素,对应的代码为

WORDS = ('modern','internet','computer','difficult','answer','question','improve','many','game','sense')
randomWord = random.choice(WORDS)

对于问题(2)如何将产生的单词变为乱序的单词,思路是:随机从单词字符串中选择一个位置position,把position位置那个字母加人乱序后单词jumbleWord,同时将原单词word中position位置那个字母删去(通过连接position位置前字符串和其后字符串实现)。通过多次循环就可以产生新的乱序后单词jumbleWord,对应的代码为:

jumbleWord = ''
while randomWord:#如果不是空串就执行循环体
    position = random.randrange(len(randomWord))
    jumbleWord += randomWord[position]
    randomWord = randomWord[:position] + randomWord[(position + 1):]

以randomWord是“phone”:第一句是定义一个空的串用来存放jumbleWord,执行到第二句,因为此时randomWord是“phone”不是空串,执行循环体,因为phone的长度是5,所以从0—4中随机选取randomWord的一个位置,执行到第四句将randomWord字符串对应位置的字符截取出来作为jumbleWord的第一个字符,执行到第五句,randomWord取走的字符从该单词中去掉,然后在执行第二句,此时randomWord是“phne”(比如区中的字符是o),执行循环体,然后依次类推,当randomWord中没有字符是,跳出循环体,继续顺序执行其他代码。

4.总结

这个小游戏最主要的是两个问题:如何随机产生单词游戏中需要随机产生单词;如何将产生的单词变为乱序的单词。通过string字符串的基本操作和random库中random.randrange()获取随机数和random.choice()随机选择内容三个知识点就可以解决。这篇内容写到这了,同时也希望大佬们批评指正,因为是新手难免会有说的不恰当甚至错误的内容,还请大佬们不要手下留情。
 


Python小游戏—猜乱序单词(一)_第4张图片

你可能感兴趣的:(Python基础)