python-5-if语句在游戏中的简单应用

python的基础学习很枯燥,除了学习这块的知识以外,更重要的是学习如何应用这些知识点,比如如下案例,感觉每次都问问自己能怎么用,遇到过的游戏或者软件哪些可能通过知识点实现,学习会更有意思。

学习内容:

《python编程:从入门到实践》

知识点:if、if else、if elif else

练习5-3:外星人颜色

假设在游戏中刚射杀了一个外星人,请创建一个名为alien_color的变量,并将其赋值为'green'、'yellow'或'red'。编写一条if语句,检查外星人是否是绿色的。如果是,就打印一条消息,指出玩家获得了5分。编写这个程序的两个版本,在一个版本中上述测试通过了,而在另一个版本中未通过(未通过测试时没有输出)。

我的代码:

alien_color = 'green'
if alien_color == 'green':
    print("赞!获得5分!\n")
    
alien_color = 'yellow'
if alien_color == 'green':
    print("赞!获得5分啊!\n")
    
alien_color = 'red'
if alien_color == 'green':
    print("赞!获得5分啦!\n")

print("----------------我是可爱的分界线----------------")
小结:

1.第一个=是赋值,第二个==是相等,易错

2.为了区别我的结果确实是green这个值生成的,我在输出的文字中用了

“获得5分”“获得5分啊”“获得5分啦”来区别,测试的话,感觉这样可以节省很多力气哈哈哈

3.‘’ : = == 这些符号比较容易错,无他,唯手熟尔。

练习5-4:外星人颜色2

像练习5-3那样设置外星人的颜色,并编写一个if-else结构。如果外星人是绿色的,就打印一条消息,指出玩家因射杀该外星人获得了5分。如果外星人不是绿色的,就打印一条消息,指出玩家获得了10分。编写这个程序的两个版本,在一个版本中执行if代码块,在另一个版本中执行else代码块。

我的代码:
#当外星人颜色是绿色时
alien_color = 'green'
if alien_color == 'green':
    print("优秀!射杀一名外星人,获得5分\n")
else:
    print("恭喜!获得10分!\n")

#当外星人颜色是红色时
alien_color = 'red'
if alien_color == 'green':
    print("优秀!射杀一名外星人,获得5分啦\n")
else:
    print("恭喜!获得10分啦!\n")

print("----------------我是可爱的分界线----------------")

小结:

1.我理解题目的中的两个版本,是if else两个版块,翻译问题;

2.可以对比下输出文字,看是哪个颜色下的输出结果;

练习5-5:外星人颜色3

将练习5-4中的if-else结构改为if-elif-else结构。如果外星人是绿色的,就打印一条消息,指出玩家获得了5分。如果外星人是黄色的,就打印一条消息,指出玩家获得了10分。如果外星人是红色的,就打印一条消息,指出玩家获得了15分。编写这个程序的三个版本,分别在外星人为绿色、黄色和红色时打印一条消息。

我的代码:
alien_color = input("请在【green,yellow,red】中选择一个外星人颜色输入:")
if alien_color == 'green':
    print("赞!获得5分\n")
elif alien_color == 'yellow':
    print("优秀!获得10分\n")
else:
    print("太棒啦!获得15分\n")

小结:

1.这个代码我偷懒了,因为不想每个颜色写一遍,我用了输入input,实现了交互。

2.今天的几个代码我都在合适位置加上了\n和分界线,分界线很好打,print就行。

3.if的这些还能应用的地方是:测试用户是否在列表及后续如何执行、app弹窗广告点击的是×还是其他部分,用户刷手机看视频的推荐,如果看一条美食超过一定时长,就执行同类推荐,如果直接划走就不在下一条推荐,游戏中,如果用户选择打开了宝箱,宝箱的物品就自动移动位置到宝箱外,诸如此类。

请支持原创啊~如有错误也请指正~感谢~

  • 24
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值