【趣解python2】之 if语句

目录

一、in判断程序

二、is判断程序

三、if嵌套程序


一、in判断程序

#成员
team=['姚明','孙悦','大大','王大治','易建联','林书豪']
print('这是一支团结之队:',team)

#判断大大  
me='大大'
if me in team:
    print(me,'是这支球队的成员!')
else:
    print(me,'不是这支球队的成员!')

#判断熊熊
me='熊熊'
if me in team:
    print(me,'是这支球队的成员!')
else:
    print(me,'不是这支球队的成员!')

        在列表中判断某一个成员是否在列表中出现,这里用的关键字是in。首先有一个列表,把列表赋值给team变量。然后可以打印出这个列表的具体内容,接下来有一个取名叫“大大”的字符串,赋值给me这个变量,使用if语句“if me in team”,判断是不是me在这个team当中,如果有的话就可以打印出是这个球队的球员,如果不是的话就打印出不是。可以看到这个“大大”在我们之前已经命名好的列表当中,有一个名叫“大大”的列表成员。

        同样在下面的判断当中,有一个“熊熊”字符串赋值给me,然后我们看看列表当中有没有“熊熊”这一个列表成员。因此结果就会打印出:熊熊不是这支球队的成员。

        也就是说in这个关键词通常用在if当中。他的判断结果是true或者false,判断列表当中是否有某一元素。

二、is判断程序

#身份
team=['姚明','孙悦','刘大大','王大治','易建联','林书豪']
print('龙之队:',team)
#判断大大
me='刘大大'
if me in team:
    print(me,'是这支球队的成员!')
else:
    print(me,'不是这支球队的成员!')

#判断超级球员MVP
MVP=me
if me is MVP:
    print(me,'是MVP!')
else:
    print(me,'不是MVP!')

#判断王大大
he='王大大'
if he is MVP:
    print(he,'是MVP!')
else:
    print(he,'不是MVP!')

        首先我们建立一个列表,它的成员都是字符串,然后赋值给team这个变量。

        这里我们还是用的是in这个判断词,来判断某一个成员是否在列表当中。把“刘大大”这个字符串赋值给变量me,可以看到这个列表当中是有“刘大大”这个成员,会打印出“刘大大”是这个球队的成员。

        在判断MVP的时候,我们用一个变量命名为MVP,把me复制给MVP。这时候的判断不再像之前使用in,而是使用的is,为什么会使用is呢?从这个字面上来看,意思为是的意思,也就是两者之间有一个等价的过程。而之前使用in,就是个体和总体之间包含关系。因为me赋值给了MVP,因此me和MVP他们同时都指向了me所指向的字符串:“刘大大”。因此MVP和me他们俩都指向相同的地址ID,因为在创建“刘大大”这个字符串的时候,计算机就已经给“刘大大”这个字符串在内存中分配了地址。“刘大大”赋值给了me。那么me就拿到了“刘大大”的地址。me又赋值给了MVP,那么MVP也就拿到me所指向的地址,也就是“刘大大”的地址。所以,在判断语句里。真正对比的是me的地址和MVP指向的地址是否一样,如果一样的话,那么就会输出,me就是MVP。

        接下来又新建了一个新的字符串叫“王大大”,按照上面的思路,“王大大”,也会在内存当中分配一个内存地址赋值给 he。这时候的判断he的地址和MVP所指向的地址是否一样?显然不一样,MVP指向了“刘大大”。而he指向了“王大大”。他们俩都有不同的内存地址,因此在if判断当中只会得到一个false的结果。也就是“王大大”不是MVP。

三、if嵌套程序

#条件语句
con=input('书读完了吗?(Y或N)')
if con.upper()=='Y': 
    print('欢迎您,小主人.请进入电视!')
    age=int(input('请问王者,您几岁?(0-150)'))
    if age<12 and age>0:
        print('您只能看1个小时哦')
    elif age>=12 and age<18:
        print('您只能看2个小时哦')
    elif age>=18 and age<=150:
        print('您已经是成年人了,随便看,但请自律!')
    else:
        print('别闹,您输入的不是人类的年龄!')
elif con.upper()=='N':
    print('快去看书吧,看完就可以看电视了!')
else:
    print('驴头不对马嘴!')

        这里开头使用了一个input方法,input的参数是一个字符串,其实input在执行的时候会分为两步。第1步就是先打印出input的参数,也就是那段字符串。这里的字符串是'书读完了吗?(Y或者N)',第2步就是需要用户手动在终端输入字符,然后获得这个字符之后,把它赋值为自己定义的con这个变量。

        接下来的程序是if语句的嵌套使用。在外面有一个大的if语句,然后大的if语句里面有一个小的if语句。大的if语句是首先判断你在客户端输入的字符是y、n或者其他字符,然后会有一个判断过程。

        小的if语句,它主要集中在判断为y的这个语句里面,进行进一步的判断。

        可以看到在输入'书读完了吗?'然后输入Y的时候,会进入if判断的这个语句里面。这里再次输入年龄的input函数。询问年龄时,然后首先会有一个提示问你多少岁了,然后将获得的岁数赋值给age,接下来就是通过if或elif判断这个年龄属于哪个年龄段。

        这里需要注意的是,在判断yes或no的时候,很多用户在输入的时候可能会不分大小写。面对这种情况,需要自己在程序里对用户输入的字符串加一个upper函数,这样就避免了用户输入错误,无论输入大写还是小写,最终都会转换为大写,以便符合程序的判断。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程小猪猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值