|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
001 代码 Shut up & Code
Game2.0.py:
- """ 用Python设计第一个游戏 """
- counts = 3
- while counts > 0:
- temp = input("不妨猜一下小甲鱼心里想的是哪个数字:")
- guess = int(temp)
- if guess == 8:
- print("你是小甲鱼心里的蛔虫吗?!")
- print("哼,猜中了也没有奖励!")
- break
- else:
- if guess < 8:
- print("小啦~")
- else:
- print("大啦~")
- counts = counts - 1
- print("游戏结束,不玩啦^_^")
复制代码
002 改进方向 Changes
- 当用户猜错的时候,程序应该给出提示
- 应该提供更多机会给用户
- 每次运行程序,答案应该是随机的
003 修改代码 Changes
第一个问题:
这里很好解决,我们已经了解了if-else结构,这里只需要把else分支下的print()删掉,换上一个if-else分支循环,判断用户输入的数字是大了还是小了就可以了。
修改之后的代码:
- """ 用Python设计第一个游戏 """
- temp = input("不妨猜一下小甲鱼心里想的是哪个数字:")
- guess = int(temp)
-
- if guess == 8:
- print("你是小甲鱼心里的蛔虫吗?!")
- print("哼,猜中了也没有奖励!")
- else:
- if guess < 8:
- print("小啦~")
- else:
- print("大啦~")
- print("游戏结束,不玩啦^_^")
复制代码
可以看到,python是利用了层层缩进来显示分支循环的层级的,这就是为什么说“缩进是Python的灵魂”。
第二个问题:
想要改进这个问题,就不得不扯到循环结构这里先介绍while循环。
while循环的语法规则是这样的:
- while 条件:
- 如果条件为真(True)执行这里的语句
复制代码
举个例子,在Python的交互模式中输入
- while 1 < 2:
- print("ilovefishc.com")
复制代码
然后电脑就开始刷屏了……
这时我们可以按下CTRL+C终止程序。
再来Alt+P看看我们的代码,可以看到,1 < 2 这个条件小孩子都知道是对的(也就是结果为True),计算机一直看一直知道结果为True,所以就不停的执行循环里面的操作,自然就形成了“刷屏”这一壮观的景象。
这时,我们可以手动的让这个条件从True变为False,也就是使用变量!
这样我们重新编写一下测试代码
- counts = 3
- while counts > 0:
- print("ilovefishc.com")
- counts = counts - 1
复制代码
运行一下,可以看到,屏幕上只打印了3行ilovefishc.com,因为每执行一次循环,counts就减去1,当全部减去,counts = 0 时,条件不符合,也就是为False,所以跳出了循环。
同理,我们的小游戏也可以这样修改:
- """ 用Python设计第一个游戏 """
- counts = 3
- while counts > 0:
- temp = input("不妨猜一下小甲鱼心里想的是哪个数字:")
- guess = int(temp)
- if guess == 8:
- print("你是小甲鱼心里的蛔虫吗?!")
- print("哼,猜中了也没有奖励!")
- else:
- if guess < 8:
- print("小啦~")
- else:
- print("大啦~")
- counts = counts - 1
- print("游戏结束,不玩啦^_^")
复制代码
另外,再次注意一下缩进问题,这个counts = counts - 1要与最内层的if-else语句对齐,否则就会出错。
这时还会有一个问题:如果用户猜对了,程序又会陷入一直为True的状态。
我们也可以把counts = counts - 1减掉一个缩进,这样无论猜对猜错都会执行counts = counts - 1
这时候就需要用到一个新的指令:break语句!
现在交互模式下做个测试:
- counts = 3
- while counts > 0:
- print("ilovefishc.com")
- counts = counts - 1
- break
复制代码
执行代码,只打印了一个ilovefishc.com,因为我们加上了一个break语句。
在while循环中用break语句,意思就是“不管三七二十一往外跳,跳出循环体”
这样我们就可以这样改:
- """ 用Python设计第一个游戏 """
- counts = 3
- while counts > 0:
- temp = input("不妨猜一下小甲鱼心里想的是哪个数字:")
- guess = int(temp)
- if guess == 8:
- print("你是小甲鱼心里的蛔虫吗?!")
- print("哼,猜中了也没有奖励!")
- break
- else:
- if guess < 8:
- print("小啦~")
- else:
- print("大啦~")
- counts = counts - 1
- print("游戏结束,不玩啦^_^")
复制代码
这样我们在执行到用户输入正确答案时,就会跳出循环体了。
004 思维导图 Picture
希望能够帮到大家
PS:最近事情有点多,可能更新地会慢一点,请见谅 |
评分
-
查看全部评分
|