欢迎光临散文网 会员登陆 & 注册

列表应用——猜单词游戏

2022-08-07 10:50 作者:夏老师学习谷  | 我要投稿

猜单词游戏就是计算机随机产生一个单词,打乱其字母顺序,供玩家去猜测。此游戏采用控制字符界面,运行界面如图所示。


2. 程序设计的思路

游戏中使用序列中元组存储所有待猜测的单词。猜单词游戏需要随机产生某个待猜测单词以及随机数字,所以引入random模块随机数函数,其中random.choice()可以从序列中随机选取元素。例如:

#创建单词序列元组

WORDS = ("python", "jumble", "easy", "difficult", "answer", "continue"

         , "phone", "position", "position", "game")

# 从序列中随机挑出一个单词

word = random.choice(WORDS)

word就是从单词序列中随机挑出一个单词。

游戏中随机挑出一个单词word后,如何把单词word的字母顺序打乱,方法是随机从单词字符串中选择一个位置position,把position位置的字母加入乱序后单词jumble,同时将原单词word中position位置字母删去(通过连接position位置前字符串和其后字符串实现)。通过多次循环就可以产生新的乱序后单词jumble。

while word: #word不是空串循环

        #根据word长度,产生word的随机位置

        position = random.randrange(len(word))

        #将position位置字母组合到乱序后单词

        jumble += word[position]

        #通过切片,将position位置字母从原单词中删除

        word = word[:position] + word[(position + 1):]

 print("乱序后单词:", jumble)

3.  程序设计的具体步骤

猜单词游戏程序导入相关模块:

# Word Jumble猜单词游戏

import random

创建所有待猜测的单词序列元组WORDS 。

WORDS = ("python", "jumble", "easy", "difficult", "answer", "continue"

         , "phone", "position", "pose", "game")

显示出游戏欢迎界面。

print(

"""

     欢迎参加猜单词游戏

   把字母组合成一个正确的单词.

"""

)

以下实现游戏的逻辑。

从序列中随机挑出一个单词,例如“easy”。然后使用2.2节介绍的方法打乱这个单词的字母顺序;通过多次循环产生新的乱序后的单词jumble。例如“easy”单词乱序后,产生的“yaes”显示给玩家。

iscontinue="y"

while iscontinue=="y" or iscontinue=="Y":    #循环

    # 从序列中随机挑出一个单词

    word = random.choice(WORDS)

    #一个用于判断玩家是否猜对的变量

    correct = word

    #创建乱序后单词

    jumble =""

    while word: #word不是空串循环

        #根据word长度,产生word的随机位置

        position = random.randrange(len(word))

        #将position位置字母组合到乱序后单词

        jumble += word[position]

        #通过切片,将position位置字母从原单词中删除

        word = word[:position] + word[(position + 1):]

    print("乱序后单词:", jumble)

玩家输入猜测单词,程序判断出对错。猜错用户可以继续猜。

    guess = input("\n请你猜: ")

    while guess != correct and guess != "":

        print("对不起不正确.")

        guess = input("继续猜: ") 

    if guess == correct:

        print("真棒,你猜对了!")

    iscontinue=input("\n是否继续(Y/N):")   #是否继续游戏

运行结果:

     欢迎参加猜单词游戏         

   把字母组合成一个正确的单词.

乱序后单词: yaes

请你猜: easy

真棒,你猜对了!

是否继续(Y/N):y

乱序后单词: diufctlfi

请你猜: difficutl

对不起不正确.

继续猜: difficult

真棒,你猜对了!

是否继续(Y/N):n

>>> 

列表应用——猜单词游戏的评论 (共 条)

分享到微博请遵守国家法律