上期的代码设计需求:
企业发放的奖金根据利润提成。发放标准是利润:
(1)低于或等于10万元时,奖金可提10%;
(2)10万-20万时,高于10万元的部分,可提成7.5%;
(3)20万-40万时,高于20万元的部分,可提成5%;
(4)40万-60万时,高于40万元的部分,可提成3%;
(5)60万-100万时,高于60万元的部分,可提成1.5%,
(6)高于100万时,超过100万元的部分按1%提成,
要求:从键盘输入当月利润,即可计算出应发放奖金总数?
代码如下:
请大家仔细阅读代码,找出其中的bug!
答案:共有5个bug。(对答案时间,答对几个了?)
(1)首先input()方法获取的数据默认是字符串型的,要参与计算需要转整数型;
(2)语句末尾不应该加分号,这是Python的特色之一哦,看看y = 0 后面是啥?
(3)If语句后面的条件如果是一个独立的逻辑(判断)运算,无需括号,其二,,其三,
(4)If语句的末尾应该有冒号哦,忘性真大。
(5)嘿嘿,if语句后面的{...}是什么鬼?一不小心写成C/C++了吗?不记得Python代码块是不需要乱七八糟的括号的吗?去掉括号不是会看起来更简洁、舒服吗?
所以,正确的代码应该是这样的:
嗯哼!看起来的确是清爽多了呀~。好了,各位,全部答对的请举手!(^-^)。
哈哈,跟各位说句实话,从这个案例,如果你真的只是找到几个bug的话,那太可惜了!这段代码最最重要的价值窃以为是它的数据抽象能力和数据结构灵活运用的能力。
正因为使用了两个列表数据,思路一变,代码忽然变得简洁许多。这种方式特别符合Python的极简风格,请没有完全明白的同学一定要细细品味。
还不清楚个中的道理的,请翻阅公众号前面发送的《Python入门》或者高渡网站的《Python轻松入门》视频课程,比较一下,那个代码更简洁。
下面公布今天的问题。
本期代码设计需求:请输出 9*9 乘法口诀表。
代码如下:
实际上,这个案例,我们也在《Python入门》中讲过,特别细心的同学一定注意到了,这个代码跟之前的代码不一样。
此处的代码,可能还是更简洁一些,它的价值依然在于培养我们抽象思维的能力,请大家细细品味其中的美感。
没错,上面的代码,依然存在一些小bug,大家擦亮眼睛,继续找吧!
找到了,就写在留言里,方便明天我们一起对答案。(大家真的要培养留言的习惯哦~)
正确答案明天揭晓。
提醒:惯例所有代码都是基于Pythpn3 的哦。