You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Python文字冒险游戏的无效移动提示信息正确打印

文字类房间移动游戏无效指令提示修复方案

核心问题排查

你的现有代码存在两个逻辑问题:

  • 未校验输入方向的合法性,直接访问字典的不存在键会触发KeyError导致程序崩溃
  • 错误提示没有和移动结果绑定,无论移动是否成功都会触发提示输出

修正后可运行代码

rooms = {
        'Great Hall': {'South': 'Bedroom'},
        'Bedroom': {'North': 'Great Hall', 'East': 'Cellar'},
        'Cellar': {'West': 'Bedroom'}
    }   # 房间映射关系表

startingbiome = 'Great Hall'  # 初始出生房间
currentbiome = startingbiome

while True:
    print('你当前位于:', currentbiome) 
    swim = input('请输入你想要移动的方向,输入Exit可退出游戏:')
    # 兼容大小写的退出判断
    if swim.lower() == 'exit':
        break
    # 校验方向是否合法
    if swim in rooms[currentbiome]:
        # 方向合法时更新当前房间
        currentbiome = rooms[currentbiome][swim]
    else:
        # 方向不合法时输出对应提示
        print('你不能往这个方向走!请重新选择移动方向!')

修改说明

  • 新增了方向合法性校验逻辑:通过in关键字判断输入的方向是否存在于当前房间的可移动方向列表中,避免非法输入导致程序崩溃
  • 调整了提示语的执行分支:只有当输入方向不合法时才会触发错误提示,移动成功时会正常刷新当前位置
  • 额外优化了退出逻辑的兼容性,支持小写exit、大写EXIT等多种大小写格式的退出指令

内容的提问来源于stack exchange,提问作者ked730

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 18:18:04