python分支结构

语法:

条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块,例如下图所示:
在这里插入图片描述

# 单分支
if 条件表达式1:
    语句1
    
如果 条件表达式1True 则执行 语句1
# 双分支
if 条件表达式1:
    语句1
else:
    语句2

如果 条件表达式1True 则执行 语句1
否则则执行 语句2
# 多分支
if 条件表达式1:
    语句1
elif 条件表达式2:
    语句2
else:
    语句3
    
如果 条件表达式1True 则执行 语句1
如果条件不满足 条件表达式2 满足 则执行 语句2
如果条件1和条件2都不满足,则执行 语句3

注意:

  1. Python 中用 elif 代替了 else if,所以 if 语句的关键字为:if – elif – else。
  2. 每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
  3. 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
  4. 缩进不能少,否则就不是分支结构的语句了。
  5. Python 中没有 switch – case 语句。

1. 分支结构成绩判断

将成绩转化为优良中差。 
	优秀 >=90
	良好 >=80>= 60< 60

分析: 需要用到多重if结构来实现
在这里插入图片描述

1. 多重if

score = int(input('输入分数:'))
if score >= 90:
    grade = '优秀'
elif score >= 80:
    grade = '良好'
elif score >= 60:
    grade = '中等'
else:
    grade = '差'
 
print('%d分 %s' % (score,grade))

2. 三元表达式

score=int(input('输入分数:'))
# 三元表达式
a = '优秀' if score >= 90 else ('良好' if score >= 80 else ('中等' if score >= 60 else '差'))
print(a)

3. for循环

score= int(input('请输入成绩:'))
a= [90,80,60,0]
b= ['优秀','良好','中等','差']
for i in range (0,4):
    if score >= a[i]:
        print(b[i])
        break

2. 猜数字游戏

数字猜谜游戏:

  1. 猜大了提示:猜的数字大了
  2. 猜小了提示:猜的数字小了
  3. 猜正确停止

分析:猜正确停止,那就是使用到while循环了。

number = 5
a = 0
print('欢迎进入猜数字游戏')
while a != number:
    a = int(input('请输入你要猜的数字'))
    if a == number:
        print('恭喜你,猜对了')
    elif a < number:
        print('猜小了')
    elif a > number:
        print('猜大了')
    else:
        print('好好玩哦~')

3. 判断输入的字母为星期几

'''
周一  Monday
周二  Tuesday
周三  Wednesday
周四  Thursday
周五  Fri(Friday)
周六  Sat(Saturday)
周日  Sunday
'''
date = input("请输入第一个字母:")
if date == 'M':
    print ('Monday') 
elif date == 'T':
    date = input("请输入第二个字母:")
    if date  == 'u':
        print ('Tuesday')
    elif date  == 'h':
        print ('Thursday')
    else:
        print ('输入有误~~~')
elif date == 'W':
    print ('Wednesday')
elif date == 'F':
    print ('Friday')      
elif date == 'S':
    date = input("请输入第二个字母:")
    if date == 'a':
        print ('Saturday')
    elif date  == 'u':
        print ('Sunday')
    else:
        print ('输入有误~~~')  
else:
    print ('输入有误~~~')

4. 删除英语单词后缀 er ly ing结尾

a = input("请输入英文单词:")
if a[-2:] == 'er' or a[-2:] == 'ly': # a[-2:],从倒数第二个开始到最后
    print(a[:-2]) # 从第一个输出 到 倒数第二个
elif a[-3:] =='ing':
    print(a[:-3])
else:
    print(a)

5. 登录验证(分支结构)

name = input("请输入用户名:")
pwd = input("请输入密码")
if name == "name":
    if pwd == "123456":
        print("登录成功!")
    else:
        print("密码错误!")
else:
    print("登录名错误!")

6. 回文串(下标,分支结构)

str  = input("请输入一个字符串:")
str2 = str[::-1]
print(str)
print(str2)
if(str == str2):
    print("是回文串")
else:
    print("不是回文串")

7. 身份证号码判断

num = input('请输入身份证号码:')
year = num[6:10]
# print(year)
month = num[10:12]
# print(month)
day = num[12:14]
# print(day)
a = int(num[16])
sex = '男'
length = len(num)
# print(length)
if length != 18:
    print('输入有误~~~')
else:
    if  a % 2 == 0:
        sex = '女'
        print('{}年{}月{}日的{}生'.format(year,month,day,sex))
    else:
        print('{}年{}月{}日的{}生'.format(year,month,day,sex))
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

1024节

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

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

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

打赏作者

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

抵扣说明:

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

余额充值