python分支结构(无switch结构)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python分支结构(无switch结构)相关的知识,希望对你有一定的参考价值。
#在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)
以上是关于python分支结构(无switch结构)的主要内容,如果未能解决你的问题,请参考以下文章
大数据必学Java基础(二十一):Switch多分支结构介绍