条件测试
程序经常要检查一系列条件,决定是否执行一些操作。比如用户小于18岁的话,就不给看某些内容。
怎么检查条件呢?通常都是判断 某条件的布尔值。 布尔值 True 表示正确,False 表示错误,比如:
除了大于号,还有很多比较操作符:
比较字符串的情,注意大小写:
布尔值的几个规则:
数字中,0的布尔值是 False, 其他数字的布尔值都是 True
空的字符串布尔值是 False
空的数组、元组布尔值是 False
if 语句
基本格式:
检查多个条件
有时候需要检查多个条件,才能决定是否执行某段代码。比如必须大于18岁,并且是会员。 这需要用 and 和 or。 and 表示要同时满足:
注意,上例中的括号是为了可读性,不加也行。
or 表示至少有一个条件为 True 就行,比如会员以及积分超过100的都行:
检查特定值是否在列表中
in 和 not in 可以帮我们判断一个值在不在列表中,比如如果该用户在黑名单中,那就不能发表评论:
if-else 语句
条件符合时执行一个操作,条件不符合的话执行另一个操作:
注意上例中用了简写,直接写 member 而不是 member == True, 因为变量 member 的值就是布尔值。
if-elif-else 语句
if-else 语句仅适合二选一的情况,比如要么是会员,要么不是。但有时候条件可能会更多,通过 elif 可以设置很多条件,依次验证,碰到符合条件的,就不再验证后面的条件了。
elif 代表 else if。比如,A 区票价500元,B 区票价200元,C 区票价100元:
结合我们之前学的所有知识,做个复杂的案例:
一个网店的商品如下,鸡蛋1元,鸭蛋2元,鹅蛋3元。顾客输入了这三者,我们就告诉它价格,输入了其他的蛋,就告诉他没有。现在,顾客说他要买鸡蛋、鸵鸟蛋、恐龙蛋:
最后,留个小作业,如果你在跟我一起学,就试着做做,把答案回复到公众号后台哈,明天集中回复 :
完成以下任务:
10以内的数中你的幸运数是3,5,8,9。如果你问用户,10以内的数中,他最喜欢的是哪几个,他会回答你几个数。如果其中有跟你的幸运数重合的,就告诉用户“你有X个数和我一样,是 XXX”, 如果没有,就说没有。
现在,假设用户回答的是2,3,8,9这几个数,试试做这道题。 (老实说,瞎编完这题之后我做了一下,还是有点难度的,做不出来别灰心哈)
初学笔记难免有谬误,欢迎您指出,感谢。
——doyoudo is the best——
领取专属 10元无门槛券
私享最新 技术干货