Pyhton基础学习系列5——分支结构和三目运算符的使用

前言

在日常生活中我们经常会遇到很多选择,在面对选择时,我们做出选择然后去为了自己的选择去要求自己干一些事情希望能得到自己想要的结果,而python语言也有自己选择的功能,那就是if分支结构。


提示:以下是本篇文章正文内容,下面案例可供参考

一、if分支结构

一般python代码的执行顺序是从上往下一条一条执行,但是if分支结构可以根据条件选择执行或者不执行某条代码。

二、使用步骤

1.if单分支结构

  • 如果……就……。
  • 类似于我们生活中的平时经常说的立个flag,如果IG夺冠就直播倒立洗头。如果条件成立就执行操作。

代码如下(示例):

语法:
if 条件语句:
    代码块

说明:
a.if        -       关键字,固定写法
b.条件语句   -       条件对应的判断语句
c.:         -       固定写法(必须是英文输入法的冒号)
d.代码块     -       结构上,代码块就是和if保持一个缩进的一条或者多条语句,但是至少一条
                    逻辑上,代码块就是满足条件的时候才会执行的代码

# 判断一个数是偶数
num1 = int(input('请输入一个整数:'))
if num1 % 2 == 0:
	print('偶数')
# 偶数

2.if双分支结构和if多分支结构

  • 双分支就是如果……就……否则就……;多分支就是多条单分支语句组成。
  • 举个简单的例子,就生活中我们常常用到的账号密码登录,如果密码账号正确就登录成功否则登录失败。
# 双分支结构
"""
if 条件语句:
    代码块1(满足条件需要执行的代码)
else:
    代码块2(不满足条件的时候需要执行的代码)
"""
# 去验证用户名和密码是否正确
username = input('请输入用户名:')
password = input('请输入密码:')
if username == 'admin' and password == '123456':
    print('登陆成功')
else:
    print('登陆失败')

# 多分支结构
"""
if 条件语句1:
    代码块1
elif 条件语句2:
    代码块2
elif 条件语句3:
    代码块3
...
else:
    代码块N
其他代码
"""
# 假设要做一个猜数字的游戏,范围为1到100,猜大了会提醒猜小一点,相反猜小了会提醒猜大一点。
import random
number = random.randint(1,100) # 创建一个范围1到100的随机数
sum1 = int(input('请输入数字:'))
if sum1 > number:
    print('猜大了')
elif sum1 < number:
    print('猜小了')
else:
    print('猜对了')
  • 这里的两个例子:一个账号密码的登录,一个猜数字游戏其实还是有点缺陷,因为只能输入一次,在后面学到while循环时会解决这个问题,

3.嵌套分支结构

  • 简单来说就是if里面再使用一个if分支结构,在判断一个条件成立的情况下再去判断另一个条件是否成立
"""
if 条件语句1:
    代码块1
	if 条件语句2:
    	代码块2
	else:
    代码块3
else:
	代码块4
...
里面可以用双分支结构也可以使用多分支结构
"""
# 案例:给定一个整数,判断这个数字是不是偶数,如果不是,打印奇数。如果是偶数,再判断其是否是10的倍数。
num = int(input('输入一个整数:'))
if not num % 2:
    if not num % 10:
        print(f'{num}是偶数,同时也是10的倍数')
    else:
        print(f'{num}是偶数,但是不是10的倍数')
else:
    print('奇数')

三、三目运算符(三元运算符)

  • 用 if 语句来实现三目运算符的功能,把多行代码写成一行。
  • 变量 = 结果1 if 条件 else 结果2 ; 符合条件,变量的值位结果1,否则为结果2.
  • 三目运算符支持嵌套,通过嵌套三目运算符,可以执行更复杂的判断,但注意三目运算符的目的是让代码更为简洁并且易读,但对于某些复杂的逻辑判断时还是使用if…else…语句会更加清晰易于理解,不要盲目使用。
  • 注意:三目运算符的单分支或者嵌套,在进行判断时都是输出左边的结果。
# A if B else C ; 如果B成立则输出A否则输出C
# 可以直接打印
year = 2000
print(f'{year}是闰年' if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) else f'{year}是平年')
# 2000是闰年
# 也可以用变量存着
year = 1900
result = f'{year}是闰年' if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) else f'{year}是平年'
print(result)
# 1900是平年

#  三目运算符嵌套
# 先执行a>b的判断,如果为真则输出print('a > b'),若不为真则进行下一个if判断,a==b如果为真,则输出print('a = b'),否则输出print('a < b')
a = 2
b = 3
print('a > b') if a > b else print('a = b') if a == b else print('a < b')
# a<b

总结

合理运用if分支语句配合循环使用可以解决许多逻辑复杂的问题,而三目运算符还可以使我们的代码看起来更加简洁,但需要合理判断逻辑的复杂性去选择是正常的使用if…else…语句还是三目运算符。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值