扎实基础深刻篇(四):据说if语句很叼?

编程时常常须要检查一系列条件,并根据此决定采起什么措施。html

在python中,if语句让你可以检查程序的当前状态,并根据此采起相应的措施。python

------------------------------编程

一个快速简单的示例学习

# 目标结果:打印出歌手GAI,猫和老鼠的Tom和外国美女rose。测试

persons=["jack","tom","jerry","gai","ROSE"]
for person in persons:
 
  if person == "gai":
    print(person.upper())
  elif person == "tom":
    print(person.title())
  elif person == "ROSE":
    print(person.lower())
  else:
    continue
输出结果:
Tom
GAI
rose
-----------------------------
零基础的能够仔细研究一下这段代码,并结合下图的代码流程图进一步更深的理解:
代码流程图调试的网址:https://pythontutor.com/visualize.html
 
------------------------------
如今进入条件测试的学习
①检查是否相等
>>>person1="ROSE"
>>>person2="Rose"
person1 == person2--->False
>>>person1="ROSE"
>>>person3="rose"
person1 == person3.upper()--->True
②比较数字
>>>age=20
age>20--->False
>>>age=18
age<=18--->True
③使用or和and检查多个条件
>>>age_1=20
>>>age_2=22
age_1>10 and age_2<23--->True
>>>age_3=18
>>>age_4=24
age_3>20 or age<23---->False
④使用特定值检查是否包含在列表中
>>>list_1=["a","b","c"]
"a" in list_1--->True
"w" in lisr_1--->False

实际上,这些都是布尔表达式,它是条件测试的别名。
网站

布尔表达式的结果要么为True,要么为False。spa

------------------------------调试

认识辣个男人:if/elif/.../elif/else代码块orm

if:只判断一件事情或一个条件htm

if/else:当条件测试经过了执行一个操做,条件测试未经过时执行另一个操做。

if/elif/else:能够测试三个条件。

if/elif/.../elif/else:极为强大的测试代码块,几乎能涵盖全部的测试条件,直到遇到了经过了的测试,Python就跳过余下的测试。

下面我将结合一个题目来说一下辣个男人:

设置变量age的值,再编写一个if-elif-else结构,根据age的值判断处于人生的哪一个阶段。

•若是此人小于2岁,请打印一条信息,说明此人是婴儿。

•若是此人至少2岁但小于4岁,请打印一条信息,说明此人是一名幼儿。

•若是此人至少4岁但小于13岁,请打印一条信息,说明此人是一名儿童。

•若是此人至少13岁但不小于20岁,请打印一条信息,说明此人是一个青少年。

•若是此人至少20岁但小于65岁,请打印一条信息,说明此人是一名成年人。

•若是该人年满65岁,请打印一条信息,说明该人是老年人。

 

age=20
if age<2:
  who="婴儿"
elif age<4:
  who="幼儿"
elif age<13:
  who="儿童"
elif age<20:
  who="青少年"
elif age<65:
  who="成年人"
else:
  who="老年人"
print("此人是:",who)
输出结果:
此人是: 成年人
我相信你们的代码写的确定不跟我同样,要知道的是:
这不表明你写错了,我只是把最简洁的写法放出来,让大家感觉到Python语法的优美简洁。
事实上,能够不须要else,把else:那一行改为elif age>=65:是不影响结果的。
else是一条一应俱全的语句,只要不知足任何if或elif中的条件测试,其中的代码就会执行,
这可能会引入无效甚至恶意的数据,好比人为加入一些黑客的命令。
若是肯定知道最终要测试的条件,应考虑使用一个elif代码块来代替else代码块。
------------------------------
用if语句对列表作一些羞羞的事
假如你是《他是歌王》歌唱节目的总导演红桃,你在查看第二期的演唱歌手列表:
["韩黄","GAI","孙北","张绍","周杰没有伦"]
这时候朋友圈刷爆了“作头发”,这次事件的男主角是嘻哈圈的著名歌手,却遭到了广电局的封杀,从而影响了嘻哈歌手。
因而本期这场的GAI歌手受到连累,不能上场,这个时候你须要在邀请函上打印相关的信息。
singer_list=["韩黄","GAI","孙北","张绍","周杰没有伦"]
for singer in singer_list:
if singer == "GAI":
print("向各位抱歉,GAI歌手本次因突发事件不能上场竞演。")
else:
print(singer+"歌手期待你前来收听")
输出结果:
韩黄歌手期待你前来收听
向各位抱歉,GAI歌手本次因突发事件不能上场竞演。
孙北歌手期待你前来收听
张绍歌手期待你前来收听
周杰没有伦歌手期待你前来收听
 
但愿你们能够好好理解这段代码的实现方法,我将布置一个做业,答案在下篇博客公布:
执行如下操做以建立一个程序,该程序模拟网站如何确保每一个人都有惟一的用户名。
•列出包含五个或更多用户名的列表current_users;再列出包含五个新用户名的列表new_users,
确保一个或两个新用户名也在当前用户列表中。
•循环浏览新用户列表,查看每一个新用户名是否已被使用。若是有,请打印一条消息,说明此人须要输入新的用户名。
若是没有使用用户名,请打印一条消息,说明用户名可用。
•确保你的比较不区分大小写。若是使用了“john”,则不该接受“JOHN”。
-----------------------------
相关文章
相关标签/搜索