Day 3 运算符与分支

一、运算符

1、数学运算符
  • ​ +、-、*、/ —— 在python中,运算功能同数学运算一样;
  • ​ %(取余) —— 求余数
    • 应用场景一:判读整除关系(判断一个数是否能够被另一个数整除 — 判断这两个数的余数是否为零);
      • 理论基础:数学结论,如果一个数能被另一个数整除,余数一定为零;
    • 应用场景二:取整数的低位数 — 让指定的数对 10 或者 10 的n次方进行取余操作

实例

print(90 % 3 )       # 0 

num = 100
print(num % 10 )     #取到个位数
print(num % 100 )    #取到十位数
  • ​ // (整除) —— 求商,商向小取整(结果相邻整数小的一个,负数同理,并不仅仅是消除小数点;
    • 应用场景一:计算一个数字中有多少个完整的另一个数;
    • 应用场景二:去掉整数的低位数,保留高位数;

实例

print(5 // 2 )          # 2
print(5 // -2)          # -3

num = 7879 
print(num // 10)        # 789

num = 72923
print(num // 10 % 10)   # 2 ( 获取num的十位数 )

  • ** (幂运算) —— 求某一个数的N次方

实例

print(4 ** 2)      # 16.0
print(16 ** 0.5)   # 4.0
print(8 ** (1/3))  # 2.0
print(4 ** -1 )    # 0.25
支持所有数学运算
2、比较运算符

符号:> , < , >= , <= , == , !=

  • 所有比较运算符的运算结果都是布尔值;
  • python中的比较运算符支持连写表示范围;

实例

print(10 == 10)                          # True 
print(10 >= 10)                          # True
print(10 != 10)                          # False

x = 2
print(1 <= x <= 10)                      # True 
3、逻辑运算符

类型:and 、or 、not

  • and(逻辑与运算)
    • 应用场景:用来连接要求同时成立两个条件,相当于生活中的并且;
    • 运算规则:两个条件同时成立则为 True,反之则为 False;
      • 运算结果为布尔值;

**案例1:**判断一个数是否能同时被 3 和 7 整除;

num = 21
print(num % 3 == 0 and num % 7 == 0)   # True

**案例2:**判断一个数是否是个位数能够被 3 整除;

num = 153
print(num % 10 % 3 == 0)               # True  
  • or(逻辑或运算)
    • 应用场景:如果要求两个条件中,有一个条件就行,用 or 来对两个条件进行连接,相当于生活中的 ”或者 “
    • 运算规则:满足一个条件成立则为 True ,反之则为 False

**案例1:**判断一个数是否能够被 3 或者 7 整除

num = 9
print(num % 3 == 0 or  num % 7 == 0)    # True

**案例1:**判断year对应的年份是否为闰年

year = 2008
print(year % 400 == 0 or (year % 4 == 0 and year % 100 != 0))    # True

注意:逻辑运算可以放到同意运算类型下,依据题目要求选择相对应的运算类型;

  • not(逻辑非)
    • 应用场景:对条件进行否定的时候使用,相当于生活中的”不“;
    • 运算规则:not 条件 — 对某一个条件进行否定(前 + not);

**案例1:**判断 age 对应的值是否不大于 18 ;

age = 38
print( not age > 18 )        # False

**案例2:**判断一个数是否不能同时被 3 和 7 整除;

sum = 23
print(not (num % 3 == 0 and num % 7 == 0 ))
print(num % 21 == 0 )         # False        

注意:此类命题中,注意审题,对应用条件的判断要清晰,才能写出正确的代码;

4、赋值运算符

符号 : = ,+= ,-= ,***= ,/= ,%= ,//= ,****=

注意:不管是什么样的赋值运算符,最终都是为了将一个数据保存到一个变量中;

  • ​ =
    • 变量名 = 数据 — 直接将指定数据保存到指定的变量中;

前面的变量名可以是么有定义过变量的变量名,也可以是定义过的,后定义变量名的数据覆盖之前定义过的数据

  • +=
    • 变量名 += 数据 — 将变量中保存的数据取出来,和后面的数据进行加法运算,再将运算结果保存到前面的变量中

这的变量必须是已经赋值过的或者已经定义过的变量

5、运算符的优先级

python中不同的运算符的优先级不同,优先级高的运算符先算;

  • 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
  • 数学运算符:** > * 、/、%、// > + 、-
  • 逻辑运算符:and > or
  • 有括号先算括号里面的
6、流程控制

通过代码控制程序执行过程;

  • 根据代码执行过程的不同,可以将代码分成三种结构:
    • 顺序结构(默认) :代码从上往下一条一条执行,
    • 分支结构( if 分支结构 ) :根据条件选择执行或者不执行相关代码;
    • 循环结构( for、while) :代码写一遍,重复执行多次;

实例

age = 35
if age >= 19:
    print('成年')
else:
    print('未成年')                # 成年
7、if分支结构
  • if 单支结构:如果XXX就XXX;
    • 条件成立执行某个操作,条件不成立这个操作就不执行

语法:

if 条件语句 :

代码块
语法机构说明
if — 关键字,固定写法
条件语句 — 可以是任何有结果的表达式,一般是判断语句
: — 固定写法(英文输入法)

代码块 — 结构上,是和 if 保持一个缩进的一条或者多条语句(至少一条;缩进一 般是 tab 键或者 4 个空格)

​ 逻辑上,代码块就是需要满足条件才执行的代码

**案例1:**如果一个数是偶数,就在控制台打印”偶数’’

num = 78
if num % 2 == 0:
    print('偶数')               # 偶数

**案例2:**根据 score 的值在控制台打印“及格”

score = 88
if score > 60:
    print('及格')               # 及格
  • if 双分支结构:如果XXX就XXX否则就XXX
    • 条件成立执行某个操作,条件不成立执行另外一个操作;

语法:

if 条件语句 :
代码块1(条件成立时执行的代码)
else :
代码块2(条件不成立时执行的代码)

代码块3(不管代码成立与否,都会执行) 关键在于是否有缩进情况

实例

num = 41
if num % 2 == 0:
    print('偶数')
else:
    print('奇数')        # 奇数

score = 45
if score >= 60:
    print('及格')
else:
    print('不及格')      # 不及格
  • if 多分支结构:如果XXX就XXX,,如果XXX就XXX,如果XXX就XXX,、、、、
    • 根据不同的条件做不同的事情

语法:

if 条件1 :
代码块1
elif 条件2 :
代码块 2
、、、
else :
代码块 N

执行过程:先判断条件1 是否成立,如果成立直接执行代码块1 ,然后整个分支结构结束;如果条件1不成立才去判断条件2 是否成立,成立执行代码块2 ,然后分支结构结束,依此类推;如果前面的条件都不成立,才会执行 else 后面的代码块;

总结:后面的条件是在前面的条件不成立的情况下进行判断的;elif 执行到条件成立的一步,才结束执行过程;elif 根据情况可以有多个,else 可有可无,有,就放最后;

**案例:**根据学生score 的值打印学生的等级;

a = input('输入考试成绩:')
score = int(a)
if score >= 90:
    print('A')
elif score >= 80print('B')
elif score >= 60:
    print('C')
else:
    print('D')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值