【Python】猜单词游戏

关键技术——random模块

random.choice() 从序列中获取一个随机元素

列表、元素、字符串都属于序列

random.randrange([start],stop[,step])(开始,结束,步长)

用于从指定范围内按指定基数递增的集合中获取一个随机数。

难点:单词字母乱序

    while word:  #word不是空字符串
        # 根据word的长度产生word的随机位置
        position = random.randrange(len(word))
        # 将position位置的字母组合到乱序后单词
        jumble += word[position]
        # 通过切片将position位置的字母从原单词中删除
        word = word[:position] + word[(position+1):]
    print('乱序后的单词为:', jumble)

上代码

#猜单词游戏
import random

#创建单词序列
WORDS = ['python', 'shampoo', 'war', 'despair', 'distach', 'ultimate', 'apple', 'elegance', 'odds']

#开始游戏
print(
"""
    欢迎参加猜单词游戏
    把字母组合成一个正确的单词
"""
        )
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):")
发布了3 篇原创文章 · 获赞 4 · 访问量 42

猜你喜欢

转载自blog.csdn.net/m0_47102213/article/details/105544783