Python的运算符和分支

Python的运算符和分支

数学运算符

数学运算符:

​ +(加)、-(减)、*(乘)、/(除)、%(求余数,取模)、//(整除)、**(幂运算)

1. % - 求余数、取模

x % y - 求x除以y的余数

print(5 % 2)		# 1
print(16 % 2)		# 0

% 可用于判断一个数是否能被另一个数整除,取低位数或者判断奇偶性

2. // - 整除

x // y - x除以y的商向小取整

可以用于正整数取低位

print(1779451 // 10)    # 去掉最后一位低位
print(1775451 // 100)   # 去掉最后两位低位

比较运算符

比较运算符:

​ >(大于)、<(小于)、>=(大于等于)、<=(小于等于)、==(等于)、!=(不等于)

注:所有比较运算符的运算结果都是布尔值(True、False),Python中的比较运算符可以像数学一样,通过连写来表示范围

逻辑运算符

逻辑运算符:

​ and(逻辑与运算符)、or(逻辑或运算)、not(逻辑非)

1. and - 逻辑与运算符

1)应用场景:

​ 相当于生活中的并且,用于链接需要同时满足的多个条件
2)运算规则:

​ 两个条件都成立时结果为True,否则为False
​ 条件1 and 条件2
​ True and True - True
​ True and False - False
​ False and True - False
​ False and False - False

2. or - 逻辑或运算

1)应用场景:

​ 相当于生活中的或者,用于连接需要多个条件中满足一个条件就成立的情况
2)运算规则:

​ 只要有一个为True,结果为True
​ True or True - True
True or False - True
False or True - True
​ False or False - False

3. not - 逻辑非

1)应用场景:

​ 对指定条件进行否定(取反)
2)运算规则:
​ not True - False
​ not False - True

4.短路操作

条件1 and 条件2 - 如果条件1是False,那么条件2不会执行(短路)

True and print('and条件2')
False and print('and条件2')

条件1 or 条件2 - 如果条件1是True,那么条件2不会执行(短路)

False or print('or条件2')
True or print('or条件2')
逻辑运算符的扩展 - 运算对象不是布尔值
print(8 and 7)      # 7
print(8 or 7)       # 8

数据1 and 数据2 - 若数据1的布尔值是True,结果就是数据2,否则结果就是数据1

数据1 or 数据2 - 若数据1的布尔值是True,结果就是数据1,否则结果是数据2

python中所有类型的数据都有布尔值。
所有的零值和空值对应的布尔值是False,其他数据的布尔值都是True

常见的零值和空值:0、0.0、0.00、’’、""、[]、()、{}、None

赋值运算符

赋值运算符:

=、+=、-=、*=、/=、%=、//=、**=

所有的赋值运算符的左边必须是变量
重要结论:所有的赋值运算符运算的功能都是给变量赋值,不会产生结果

  1. =
    定义变量后者重新给变量赋值的时候使用

  2. +=、-=、*=、/=、%=、//=、**=
    要求:赋值符号前面的变量必须是已经定义过变量
    变量 += 数据 -> 变量 = 变量 + 数据

  3. 运算符的优先级
    数字运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
    ** > *、/、%、// > +、-
    有括号先算括号

分支结构

1. 流程控制

1)顺序结构(默认) - 代码从上至下依次执行,每条语句执行一次
2)分支结构 - 代码执行看条件是否成立(if语句)
3)循环结构 - 让代码重复执行(for、while)

2. if分支结构
  1. if单分支结构 - 满足条件执行某个操作,条件不满足时,操作不执行
语法:
if 条件语句:
    代码段
    
说明
if              -   关键字,固定写法
条件语句        -   任何有结果的表达式,例如:数据、运算表达式(赋值运算除外)、函数调用表达式等
:               -   固定写法
代码段          -   与if保持缩进的一条或者多条语句(至少一条):需要满足条件才执行的代码

执行过程
先判断条件语句是否为True(如果条件语句的结果不是布尔,就转换成布尔再看),如果为True就执行代码段,否则代码段不执行
num = 14
if num % 2 == 0:
    print('偶数')
if num % 2 != 0:
    print('奇数')

if num % 2:
    print('奇数')
if not num % 2:
    print('偶数')
  1. if双分支结构 - 满足条件执行某个操作,不满足此条件,执行另一操作
语法:
if 条件语句:
    代码段1(满足条件才执行的代码)
else:
    代码段2(条件不满足的时候才执行的代码)
代码段3(不管条件满不满足,都执行)
age = 16
if age >= 18:
    print('成年')
else:
    print('未成年')
  1. if多分支结构 - 根据不同的条件做不一样的事情
if 条件语句1:
    代码段1
elif 条件语句2:
    代码段2
...
else:
    代码段n
    
前提:多个条件中如果其中一个条件满足,其他的条件绝对不会满足

将指定分数分为A(90以上)、B(80–90)、C(60–80)、D(60以下)四个等级

score = 60
if score > 90:
    print('等级A')
elif 80 <= score:
    print('等级B')
elif 60 <= score:
    print('等级C')
else:
    print('等级D')
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值