选择结构也称为分支结构,按照条件选择执行不同的代码段
单分支结构if的语法结构
if 表达式:
语句块 #需要注意的是缩进格式,以及冒号必须存在
执行流程
如果表达式的值是True,就执行语句块,否则就跳过语句块,继续执行后面的代码
#判断一个字符串是否是空字符串
x = input("请输入一个字符串:")
if x: #在python中一切皆对象,每个对象都有一个布尔值,而空字符串的布尔值为False,所以用if x:判断字符串是否为空
print("字符串不为空")
if not x:
print("字符串为空")
#判断是否是奇数
num = int(input("请输入一个数字:"))
if num % 2:
print("奇数")
if not num % 2:
print("偶数")
#如果if语句块中只有一句代码,则可以将这句代码直接写在冒号的后面
if True: print("结果一直是True")
#在python中,关系运算符是可以连续使用的
if 1 < 2 < 3: #等价于if 1 < 2 and 2 < 3
print("True")
在python中,条件表达式不允许使用赋值运算符“=”,避免了将关系运算符“==”写成赋值运算符带来的麻烦。在条件表达式中使用赋值运算符,会提示语法的错误。
另外在python中没有switch-case语句,多个条件的判断要使用if-elif语句
if-else语句
if 表达式: 当判断条件成立时,会执行语句块1,不满足判断条件,则会执行
语句块1 语句块2
else:
语句块2
另外else语句后面也要使用冒号,表示条件不满足时要执行的代码块,使用缩进表示需要执行多行代码。
else要紧跟在if语句后面,中间不能执行其他的代码。
python还提供了一种三元运算符,并且在三元运算符构成的表达式中还可以嵌套三元运算符,可以实现与选择结构相似的结果
表达式1 if 判断条件 else 表达式2
当条件表达式的值为True时,值为表达式1,否则为2
if-elif语句
当需要判断的情况大于两个时,就用到了if-elif语句
if 条件表达式1: 当满足条件1时则执行语句块1,然后整个if结束;
语句块1
elif 条件表达式2: 如果不满足条件1,则判断是否满足条件2,满足则执行语句块3,然后
语句块2· 整个if结束;
elif 条件表达式2: 如果不满足条件2,则判断是否满足条件3,满足则执行语句块3,然后
语句块3· 整个if结束;
#商场做活动,购物一千元以上,享受九折优惠;两千元以上,享受八折优惠;三千元以上,享受七折优惠;四千元以上,享受六折优惠。
#请编写程序,计算购物金额所享受的折扣。
a=eval(input("请输入购物金额:"))
if a>=1000:
print("九折优惠金额是",a*0.9)
elif a>=2000:
print("八折优惠金额是",a*0.8)
elif a>=3000:
print("七折优惠金额是",a*0.7)
elif a>=4000:
print("六折优惠金额是",a*0.6)
elif a<1000:
print("不享受任何折扣",a)
elif语句也可以和else语句一起使用
#在十字路口的交通信号灯,根据信号灯的颜色,判断是否可以通行
a=input("请输入信号灯颜色:")
if a=="绿灯":
print("可以通行")
elif a=="黄灯":
print("等一等,红灯即将变绿灯了")
elif a=="红灯":
print("不可以通行")
else:
print("信号灯故障")
if嵌套是指在if语句中包含if语句。
if 表达式1:
语句块1
if 表达式2:
语句块2
else:
语句块3
else:
if 表达式4:
语句块4
#缩进必须一致
#猜拳游戏是大家经常玩的,我们来做一个“石头、剪刀、布”的猜拳游戏,按照游戏规则,石头胜剪刀,剪刀胜布,布胜石头。
# 首先用户输入0、1、2分别代表石头、剪刀、布,电脑通过random函数随机生成0、1、2,下面我们来模拟用户和计算机的猜拳比赛。
import random
a=int(input("石头(0)、剪刀(1)、布(2):"))
b=random.randint(0,2)
if a==b:
print("平局!")
elif (a>b):
print("你赢了!")
else:
print("你输了!")
本站资源均来自互联网,仅供研究学习,禁止违法使用和商用,产生法律纠纷本站概不负责!如果侵犯了您的权益请与我们联系!
转载请注明出处: 免费源码网-免费的源码资源网站 » python的if选择结构
发表评论 取消回复