这是我参与11月更文挑战的第21天,活动详情查看:2021最后一次更文挑战
if嵌套
最后,终于来到了扫码支付阶段,其实扫码支付的发展并不是一帆风顺的,2014年,疯抢微信红包,扫红码下载应用送红包,为扫码支付奠定用户基础,紧接着央行就叫停了二维码支付,原因是信息安全和资金安全,2016年支付宝推出扫红码送红包,二维码支付地位重获承认,市场井喷,此后,扫码支付前景一片光明。
由此可以看出,扫码支付中我们最关心的还是安全问题,为此,微信和支付宝也提供了各种保护措施,常见的就有单笔限额,频繁付款限制,额度限制等,用来更好的保障消费者的支付安全。
在具体的支付场景中,最常见的就是大额验证保护机制,如下支付场景
1 | markdown复制代码支付限额规则 |
像这种如果底下还有如果(即条件里还套条件)的情况,我们如何用Python把上面的规则写出来,并得出评价呢?
答案就是——嵌套条件。
if嵌套的应用场景,简单来讲就是:在基础条件满足的情况下,再在基础条件底下增加额外的条件判断。
就像上面的基础条件是500元,500元以上必须输入密码且密码正确才会支付成功,500元以下检测是否开启小额支付,如果开启了,不需要输入密码就直接支付成功,如果没开启,需要输入支付密码且密码正确才会支付成功。
因此,支付的场景用代码表示,应该用if嵌套来完成代码:
1 | python复制代码# 正确密码为123456 |
结果是小金额支付成功,你能看出程序的执行流程吗?下面我们一块来分析以下
if嵌套的执行循序
首先,我们先从整体总览一下,这段支付验证规则的代码,总共分为四部分【赋值、if、else、print()
】,两个大代码组。
并且,在代码组1的if条件和代码组2的else的条件下,又包含了条件判断命令if…else…,在代码组2的的else条件下又包含了if…else.
那么,这种嵌套命令我们要如何理解呢?
缩进相同的命令处于同一个等级,第一步,计算机就要按顺序一条一条地执行命令。
那么计算机的执行顺序是:
如何写嵌套代码
if嵌套由于涉及多个条件判断,并且是条件套条件的判断,为了逻辑清楚,我们可采用“由外而内,分而治之”的方法写if嵌套。
有一堆快递,要分别运往北京,上海,广州的某个小区。那么我们该如何对快递按地址进行分类呢?
第一步,我们对快递按北上广进行分类。
模拟代码是这样滴。
1 | python复制代码address='北京' |
第二步,我们对到达北京中心的快递按区进行分类。
模拟代码是这样的。
1 | python复制代码if address=='北京': |
这时候我们会发现,我们只需要对到达北京的快递进一步捡练就可以。其实这是一种编程思想,就是分而治之的思想,将复杂的问题分为若干个小问题进行处理,问题就会变得非常简单。
第三步,假设快递到了昌平区,我们就可以进一步按街道进行捡练,最后按小区进行分发就可以。
嵌套是不是好玩又实用,不过还是要提醒一下,一定不要忘了缩进哦。
最后的最后,我们来总结一下知识点:
本文转载自: 掘金