python的分支结构

举报
tea_year 发表于 2021/12/29 23:38:59 2021/12/29
【摘要】 #在if语句嵌套中,需要特别注意的else和if的配对问题。python编译系统处理该问题的原则是:else 总是与同一语法层次中离他最近的尚未配对的if配对#例如:# x=10# y=85# if x>20 or x<-10:# if y<100 or y>x:# print("Good...

      #在if语句嵌套中,需要特别注意的else和if的配对问题。python编译系统处理该问题的原则是:else 总是与同一语法层次中离他最近的尚未配对的if配对
      #例如:
      # x=10
      # y=85
      # if x>20 or x<-10:
      #     if y<100 or y>x:
      #         print("Good")
      # else:
      #         print("Bad")
      # num=int(input("请输入一个数字:"))
      # if num%2==0:
      #     if num%3==0:
      #         print("你输入的数字可以整除2和3")
      #     else:
      #         print("你输入的数字可以整除2,但是不能整除3")
      # else:
      #     if num%3==0:
      #         print("你输入的数字可以整除3,但是不能整除2")
      #     else:
      #         print("你输入的数字,不能整除2和3")
      #4.3.2真值测试;
      #python与cC++在处理真值和逻辑运算的方式上有所不同。在python中:
      #任何非0数字和非空对象都未真。
      #数字0、空对象(如空列表[],空字典{})、None都为假;
      #比较和相当测试返回true(真)或false(假)。
      #逻辑运算and和or,会返回参与运算的真或假的对象。
      #回顾:逻辑运算:not x:x非真即假,非假即真;
      #x and y:双真才为真;x or y:x 双假才为假;
      #1.比较和相等测试,总是返回true或false。
      print(2<5)
      print(2>5)
      print(2==5)
      #2 not 运算,not运算返回true或false。例如:
      print(not True,not False)
      print(not 0,not 1,not 2)
      print(not 'abc',not [1,2],not{'a':12})  #非空对象为真;
      print(not '',not[],not{}) #空的对象为假
      #3.and和or,python中的and和or运算符总是返回参与运算的对象,而不True和False。Python在计算and运算时,总是按从左到右的顺序计算。
      #在找到第一个计算为假的对象,返回该对象,即使右侧还有需要计算的对象,计算都结束。这种计算方式称为短路计算。
      print(2 and 0)
      print([] and 2)
      print(2 and {})
      print([]and{})
      print(2 and 5) #如果参与运算的对象都为真,则返回最后一个为真的对象。
      print(5 and 2)
      #or运算同样执行短路计算,在找到第一个为真的对象时,返回该对象,计算结束。
      print(0 or 2)
      print(2 or [])
      print(False or 5)
      print([]or{})
      print({}or[])
      print(False or 5)
      #3.3 if...elif 三元表达式
      x=5
      y=100
      if x>y:
          a=x
      else:
          a=y
      print(a)
      #该if语句,将x、y中较大值赋值给a,该语句可简化为如下的if...els三元表达式。
      #a=x if x>y else y
      #python还支持从列表中挑选对象,其基本格式如下:
      # a=[x,y][f]
      #f为假时,将x赋值给a,否则将y赋值给a。假前,真后
      a=5
      b=10
      c=[a,b][a>b]
      print(c)
  
 

文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/81737029

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。