魔法图书馆大冒险

简介: 【7月更文挑战第27天】

游戏名称:魔法图书馆大冒险

游戏背景:

玩家意外闯入了一个神秘的魔法图书馆,图书馆的管理员告诉玩家,只有正确完成书籍分类任务,才能找到离开图书馆的线索。

游戏关卡:

玩家进入图书馆的藏书室,里面堆满了各种魔法书籍。

屏幕上会显示一系列魔法书籍的名称,例如:["火焰魔法", "冰霜魔法", "火焰魔法", "治愈魔法", "火焰魔法"]

玩家需要在规定时间内,使用题目 1 中提到的算法,通过编程(可以是在游戏内提供的简单编程界面)将这些书籍按照类型分类,并统计每种类型的数量。

游戏结果判定:

如果玩家成功生成了正确的字典,即 {"火焰魔法": 3, "冰霜魔法": 1, "治愈魔法": 1} ,则视为完成任务,管理员会给予玩家离开图书馆的关键线索。

如果玩家未能在规定时间内完成或者结果错误,则需要重新尝试。

通过这样的游戏关卡,既增加了游戏的趣味性,又让玩家在游戏过程中应用和巩固了 Python 字典的相关知识。

import time
import random

# 定义题目 1 的函数
def classify_books(book_list):
    book_dict = {
   }
    for book_type in book_list:
        if book_type in book_dict:
            book_dict[book_type] += 1
        else:
            book_dict[book_type] = 1
    return book_dict

# 游戏关卡函数
def magic_library_game():
    magic_books = ["火焰魔法", "冰霜魔法", "火焰魔法", "治愈魔法", "火焰魔法"]
    random.shuffle(magic_books)  # 打乱书籍顺序增加难度

    print("开始书籍分类任务!")
    start_time = time.time()  # 记录开始时间

    user_dict = {
   }
    while True:
        user_input = input("请输入书籍类型和数量,格式为'书籍类型:数量',输入'完成'结束输入: ")
        if user_input == "完成":
            break
        try:
            book_type, count = user_input.split(":")
            count = int(count)
            user_dict[book_type] = count
        except ValueError:
            print("输入格式错误,请重新输入!")

    end_time = time.time()  # 记录结束时间

    if user_dict == classify_books(magic_books):
        elapsed_time = end_time - start_time
        if elapsed_time <= 30:  # 假设规定时间为 30print("恭喜你,成功完成任务,用时", elapsed_time, "秒,管理员给了你离开图书馆的线索!")
        else:
            print("你完成了任务,但超时了,用时", elapsed_time, "秒,请重新尝试。")
    else:
        print("分类错误,请重新尝试。")

magic_library_game()
目录
相关文章
|
6月前
|
算法 Python
魔法图书馆大冒险 编程
【7月更文挑战第26天】
48 10
|
8月前
|
定位技术
小明最近迷恋上了一款游戏《我的世界》,哎游戏里小明可以任意开发资源然后建造各种宏伟的建筑。有一天小明发现了一块荒野的土地上有很多宝藏,小明想在土地上建一栋房子从而把宝藏包围起来
小明最近迷恋上了一款游戏《我的世界》,哎游戏里小明可以任意开发资源然后建造各种宏伟的建筑。有一天小明发现了一块荒野的土地上有很多宝藏,小明想在土地上建一栋房子从而把宝藏包围起来
123 0
疯呐!我居然给一群教师讲网页制作?
我想我大概是疯了,居然在这个面向教师和家长群体的公众号里给大家聊网页制作!
98 0
|
机器学习/深度学习 人工智能 算法
电影《流浪地球2》观后感
电影《流浪地球2》观后感
701 1
电影《流浪地球2》观后感
|
Java
新鲜出炉的点菜系统(附源码)
新鲜出炉的点菜系统(附源码)
265 0
新鲜出炉的点菜系统(附源码)
|
定位技术 API
好客租房127-百度地图api1介绍
好客租房127-百度地图api1介绍
116 0
|
前端开发 JavaScript Go
好客租房95-编程式导航
好客租房95-编程式导航
129 0
|
API
好客租房100-好客租房学习目标
好客租房100-好客租房学习目标
107 0
|
Devops 程序员 数据安全/隐私保护
30行代码,10分钟,七夕脱单攻略
那么如何10分钟写封有动(liao)人(mei)的情书呢?,首先你得有个对象,new的也可以,其次你得有秘密,公开的也可以。
475 0
30行代码,10分钟,七夕脱单攻略
电影《我不是药神》观后感
 第一次写关于电影的观后感,献给徐峥的《我不是药神》的电影,相信我这是一部即使我剧透了一部分的电影内容你依然会去电影院看的现实题材电影。这或许是徐峥截至目前为止演的最有冲击力的一部电影  电影的故事主线是阿三的国度印度生产一种印度版的白血病专用药格列宁,价格只有正规市场价格的10%左右,一个现实社会中的小人物阴差阳错的走上了代人“走私药品”的道路,为很多因为高价买不起只能等死的白血病人带来希望的故事。
1717 0