码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2019-01-24 10:55:43      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:五个   流程图   mic   消息   current   人生   ons   男人   大小写   

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

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

------------------------------

一个快速简单的示例

# 目标结果:打印出歌手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。

------------------------------

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

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

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”。
-----------------------------

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

标签:五个   流程图   mic   消息   current   人生   ons   男人   大小写   

原文地址:https://www.cnblogs.com/Masterpaopao/p/10312225.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!