您可能需要尝试使用非常简单的类和字典。它们基本上就是你要找的。在class Room:

def __init__(self, text, other_rooms=None):

self.text = text

self.other_rooms = other_rooms

def set_other_rooms(self, other_rooms):

self.other_rooms = other_rooms

rooms = [Room("You are in a small bedroom! There is a door to the north."),

Room("You are now in a bigger bedroom! There is a door to the East!"),

Room("You are now in the North hall! There is a Door to the South!"),

Room("You are now in the South hall! There is a door to the East!"),

Room("You are now in the dining room. You smell something past the North door!"),]

rooms[0].set_other_rooms( { "north":rooms[1],

"south":None,

"east":None,

"west":None } )

rooms[1].set_other_rooms( { "north":None,

"south":None,

"east":rooms[2],

"west":None } )

rooms[2].set_other_rooms( { "north":None,

"south":rooms[3],

"east":None,

"west":None } )

rooms[3].set_other_rooms( { "north":None,

"south":None,

"east":rooms[4],

"west":None } )

rooms[4].set_other_rooms( { "north":rooms[5],

"south":None,

"east":None,

"west":None } )

current_room = None

done = False

while not done:

print(current_room.text)

user_c = input("What direction do you want to go?").lower()

if user_c == "exit":

done = True

elif current_room.other_rooms[ user_c ]:

current_room = current_room.other_rooms[ user_c ]

else:

print("You can't go that way.")

还有,伙计,这真是个糟糕的教程。它对于教授初学者Python可能有一些好处,但是如果你真的在Python中开发,它根本不是你想要做的。虽然在web上确实有很多很棒的内容可以学习Python,但是也有很多垃圾。承认做事情没有最好的方法,但同时尽量遵循最佳实践。这通常包括咨询堆栈交换。在

python 冒险游戏_Python中冒险游戏的While循环相关推荐

  1. python 矩阵运算 for循环_如何用 Python 科学计算中的矩阵替代循环

    展开全部 因为在Mathematica中使用循环确实是低效的.32313133353236313431303231363533e78988e69d8331333361313961..... 深层次的原 ...

  2. python 跳出for循环_python中如何退出for循环

    Python中的for循环与其它语言不大一样,但跳出循环还是与大多数语言一样,可以使用关键字continue跳出本次循环或者break跳出整个for循环. break语句: Python中的break ...

  3. python中字典的循环遍历_python中字典如何遍历循环

    python中字典如何遍历循环 发布时间:2020-09-24 14:16:07 来源:亿速云 阅读:64 作者:Leah 这篇文章将为大家详细讲解有关python中字典如何遍历循环,文章内容质量较高 ...

  4. python字符集_PYTHON 中的字符集

    Python中的字符编码是个老生常谈的话题,今天来梳理一下相关知识,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码:Python3的 默认编码 ...

  5. python参数化_Python 中如何实现参数化测试的方法示例

    之前,我曾转过一个单元测试框架系列的文章,里面介绍了 unittest.nose/nose2 与 pytest 这三个最受人欢迎的 Python 测试框架. 本文想针对测试中一种很常见的测试场景,即参 ...

  6. kafka python框架_Python中如何使用Apache Avro——Apache的数据序列化系统

    了解如何创建和使用基于Apache Avro的数据,以实现更好,更有效的传输. 在这篇文章中,我将讨论Apache Avro,这是一种开源数据序列化系统,Spark,Kafka等工具正在使用该工具进行 ...

  7. python标准化_python中标准化

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! sdk 3.0 实现了统一化,各个语言版本的 sdk具备使用方法相同.接口调用方 ...

  8. python中的for语句涉及的序列可以是列表_Python中的列表与循环

    文章中的所有例子全部经过实际测试,可以直接使用.开发环境是python 3.8.5 条件和循环 本章的主要内容是Python的条件和循环语句.主要涉及if.else.elif.while.for.ra ...

  9. python分支语句_Python中分支语句与循环语句实例详解

    前言 本篇博文介绍一下Python中的if条件语句.while循环语句.for in循环语句以及break和continue控制关键字. 分支的基本语法 if 条件表达式: 语句1 语句2 语句3 . ...

最新文章

  1. CentOS7安装Python3详细步骤与Python2共用方法
  2. unity3d做会减少的血条_Unity3d中NGUI加强版血条(Healthbar)的制作
  3. Pandas文本处理双雄extract+extractall
  4. 太强了!一份来自清华的「数据分析」笔记!
  5. Laravel事件Event
  6. ad中pcb双面板怎么设置_PCB的设计规则和加工要求参考
  7. php 自带缓存,封装ThinkPhP自带的缓存机制
  8. C#的变迁史07 - C# 4.0 之线程安全集合篇
  9. 【有容云案例系列】基于Jenkins和Kubernetes的CI工作流
  10. 永不改变的PCB设计黄金法则
  11. js createelement_如何在vue中继续使用layer.js,亲测好用
  12. win7旗舰版和纯净版系统哪个好
  13. 金蝶K3物料主数据计划策略字段设置
  14. 复制或粘贴内容到含有隐藏单元格的区域时如何只复制或粘贴可见单元格
  15. H264 视频文件 帧格式 传输封装等
  16. 机器学习,看这一篇就够了:回归算法,特征工程,分类算法,聚类算法,神经网络,深度学习入门
  17. Deepgreen/Greenplum 删除节点步骤
  18. 快捷键:浏览器关闭网页的快捷键,切换网页的快捷键,打开网页的快捷键
  19. python两个表格相同数据筛选_python如何统计所有文本文件的行数 如何用python实现两个文件重复数据筛选并统计...
  20. 12306所有车次及时刻表的爬取中

热门文章

  1. 西门子去年在欧洲提交专利申请数量最多 华为排第二
  2. Zhang Xiao
  3. unity超级马里奥2d游戏开发课程-01课程介绍
  4. Scipy文件输入/输出mat,wav,mp3
  5. 在Linux直接运行安卓程序
  6. 成长,不断破局 | 1024程序员节特别企划
  7. css-Basics
  8. 一阶零输入响应例题_RL 一阶电路的零输入响应, 按指数规律衰减, 按指数规律衰减。_学小易找答案...
  9. Vegas媒体生成器功能介绍
  10. 区块链编程初学者指南