笨办法学Python3 习题35 分支和函数
XX.isdigit() 内置函数检验数据是否为数字类型
if choice < '50': # 50 需要加引号 ,不然报错
游戏内容:
用函数定义4个房间,分别是开始的房间1,房间1左边的熊房间2,房间1右边的恶魔房间3,以及熊旁边的金币房间4。
定义一个失败退出的函数。
开始房间1进去选择走左边还是右边,用if 语句判断,左边调用熊房间2,右边调用恶魔房间3,输入其他游戏失败。
左边进入熊房间2,输入引开熊方法,用while 和 if 循环语句 ,每当while True 时候 需要用户输入方法,循环if 代码块。
- 如果拿蜂蜜 ,游戏失败。
- 如果嘲讽熊,赋值 True ,再次循环while ,用户再次输入,这时如果再输入嘲讽熊,激怒熊,游戏失败,换做打开门,调用金币房间4,输入其他提示不理解,游戏失败。
右边进入恶魔房间3,提示输入逃命或者被吃脑袋,逃命调用开始房间1,输入脑袋直接游戏失败,其他再次调用回到恶魔房间3。
通关熊房间进入金币房间4,选择需要拿多少金币,检验输入是否为数字类型,真 的就再判断是否小于50,小于50通关,大于50失败;为假不是数字类型就失败。
1 from sys import exit
2
3 def gold_room(): # 定义金币房间函数
4 print("这个房间装满金子,你要多少钱?")
5
6 choice = input("输入你需要拿走多少金子>")
7
8 if choice.isdigit(): # XX.isdigit() 内置函数检验数据是否为数字类型
9
10 if choice < '50': # 50 需要加引号 ,不然报错
11 print("很好,你不贪婪,你胜利了!")
12 exit(0)
13
14 else:
15 dead("你这个贪婪的混蛋!")
16
17 else:
18 dead("伙计学会打数字。")
19
20 def bear_room(): # 定义熊房间函数,提示关键信息蜂蜜,门前熊,怎么移动
21 print("""
22 这里有一只熊。
23 这只熊有一束蜂蜜。
24 胖熊在另一扇门前。
25 你打算如何移动熊?
26 """)
27 bear_moved = False # 先将不通过的假 赋值给变量
28
29 while True: # 用 while循环来回走if 语句
30 choice = input("怎么做?>")
31
32 if "拿蜂蜜" in choice:
33 dead("熊看着你,然后扇了你一耳光。")
34
35 elif choice =="嘲讽熊" and not bear_moved:
36 print("""
37 熊已经离开了门,
38 你现在可以通过了。
39 """)
40 bear_moved = True
41
42 elif choice =="嘲讽熊" and bear_moved:
43 dead("熊被激怒了,还把你的腿咬掉。")
44
45 elif choice =="开门" and bear_moved:
46 gold_room()
47
48 else:
49 print("我不知道那是什么意思。")
50 dead("熊发现了你,没时间了。")
51
52 def cthulhu_room(): # 定义函数克苏鲁房间
53 print('''
54 这里你看到了巨大邪恶的克苏鲁。
55 只要他盯着你,你就会发疯。
56 你是逃命还是吃掉你的脑袋?
57 ''')
58
59 choice = input("输入选择>")
60
61 if "逃命" in choice :
62 start()
63
64 elif "脑袋" in choice:
65 dead("那真好吃。")
66
67 else:
68 cthulhu_room()
69
70 def dead(why): # 定义闯关失败提醒退出函数
71 print(why,"闯关失败,退出游戏。")
72 exit(0)
73
74 def start(): # 定义函数开始房间
75 print("""
76 你在一个黑暗的房间,
77 你的左右边各有一扇门,
78 你选择左边还是右边?
79 """)
80
81 choice = input("输入选择>")
82
83 if choice =="左边":
84 bear_room()
85
86 elif choice =="右边":
87 cthulhu_room()
88
89 else:
90 dead("你跌跌撞撞地在房间里撞来撞去。")
91
92 start() # 调用开始房间的函数,开始游戏
93
94
PS C:\Users\Administrator\lpthw> python ex35.py 你在一个黑暗的房间, 你的左右边各有一扇门, 你选择左边还是右边? 输入选择>左边 这里有一只熊。 这只熊有一束蜂蜜。 胖熊在另一扇门前。 你打算如何移动熊? 怎么做?>嘲讽熊 熊已经离开了门, 你现在可以通过了。 怎么做?>开门 这个房间装满金子,你要多少钱? 输入你需要拿走多少金子>49 很好,你不贪婪,你胜利了!