python分支结构(无switch结构)
admin
2023-07-21 06:03:00
0

#在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)

相关内容

热门资讯

美财长被曝曾对泽连斯基爆粗口,... 由《纽约时报》记者玛吉·哈伯曼和乔纳森·斯旺撰写的《政权更迭》一书爆料,美国财政部长贝森特曾建议特朗...
美国芝加哥发生枪击事件,至少1... △芝加哥市19日晚发生枪击事件的现场据当地警方20日发布的消息,美国芝加哥市19日晚发生一起枪击事件...
意大利总理回击特朗普批评:应关... △意大利总理梅洛尼(资料图)意大利总理梅洛尼20日就美国总统特朗普针对其政府的最新批评作出回应,称特...
以总理及防长被曝已命令以军在黎... 据以色列方面20日消息,以色列总理内塔尼亚胡和国防部长卡茨已下达指令,要求以军在黎巴嫩停火。根据该指...
梁文杰称台湾人几乎不吃凤梨释迦... 海峡导报综合报道 台陆委会副主委梁文杰18日称凤梨释迦“台湾人几乎不吃,是仰大陆鼻息的农产品”,引起...
伊朗谈判代表已启程前往瑞士 据伊朗方面20日消息,伊朗谈判代表已启程前往瑞士,就谅解备忘录与美方进行讨论。6月20日,巴基斯坦外...
美军称暂未观察到伊朗关闭霍尔木... 新华社华盛顿6月20日电 据美国媒体20日援引美国高级官员的话报道称,美军暂未观察到伊朗关闭霍尔木兹...
万亿市场,“爆发前夜” 就在SpaceX6月12日完成纳斯达克首秀前,创始人埃隆·马斯克在一场访谈上确认,SpaceX正在开...
乌俄互指对方在赫尔松州发动袭击 乌克兰赫尔松州军事管理局20日在社交媒体发文称,截至当天早上6时,赫尔松州乌控区在过去24小时内遭俄...
伊朗外长将与巴基斯坦内政部长一... 当地时间20日,有消息显示,伊朗外长阿拉格齐20日晚将与巴基斯坦内政部长纳克维一同前往瑞士。伊朗外交...