学习Python的D3运算符和分支

一、数学运算符

数学运算符:

+, -, *, /, %(取余,取模), //(整除), **(幂运算)

    1. +,-, *, /,和数学一样
    • print(5+2, 5-2, 5*2, 5/2)
      
    1. %(取余,取模)
    • x % y 求x除以y的余数

    • print(5 % 2)     # 1
      
  • 应用1:判断一个数字能否被另一个数字整除

  • print(18 % 6)
    
  • 应用2:取低位数(对10或10的n次方取余)

  • num = 1234
    print(num % 10)    # 4
    print(num % 100)    # 34
    
    1. //(整除)
    • x // y x除以y的商向小取整

    • print(5 // 2)    # 2
      
  • 应用:正整数去掉低位

  • num = 12345
    print(num // 10)    # 1234
    
  • 练习:获取指定正整数的十,百位数

  • num = 3945
    print(num % 100 // 10)    # 4
    print(num // 100 % 10)    # 9
    
    1. **幂运算
    • x ** y 求x的y次方

    • print(2 ** 8)
      print(256 ** (1/4))
      print(2.2 ** 2)
      

二、比较运算符

比较运算符:

<, >, >=, <=, ==(等于), !=(不等于)

  • 重要结论:所有比较运算的结果都是布尔值

    • print(10 > 20)
      print(10 < 20)
      print(10 != 10)
      
  • Python中是比较运算符可以通过连写表示范围

    • age = 28
      print(18 <= age <= 50)
      

三、逻辑运算符

逻辑运算符:and(与运算), or(或运算), not(非)

    1. and
  • 应用:相当于生活中的并且,用于连接需要同时满足的多个条件
    运算规则:T and T 是T, 有F就是F
    条件1 and 条件2
    True and True
    False and False
    T and F
    F and T
    
  • 练习:写出能被3和7同时整除

  • num = 42
    print(num % 3 == 0 and num % 7 == 0)
    print(num % 21 == 0)
    
    1. or
    • 应用:相当于生活中的或者,用于连接需要多个条件中满足一个条件就行的情况
      运算规则:有一个是T, 结果就是T,都为F才会F
      
  • 练习:gpa高于4或score大于等于95

  • gpa = 5
    score = 95
    print(gpa > 4 or score >= 95)
    
  • 练习:判断是否为闰年

  • year = 2021
    print((year % 4 == 0 and year % 100 != 0) or (year % 400 == 0))
    
    1. not
    • 应用:对指定条件进行否定
      运算规则:T变F, F变T
      not F
      not T
      
  • 练习:不能同时被3和7整除

  • num = 87
    print(not num % 21 == 0)
    
    1. 短路操作
    • 条件1 and 条件2      条件1是F,条件2不会执行
      条件1 or 条件2       条件1是T,条件2不会执行
      
    1. 逻辑运算符的扩展 运算对象不是布尔值
    • 数据1 and 数据2   数据1的布尔值是T,就是2,否则就是1
      数据1 or 数据二   数据1的布尔值是T,就是1,否则是2
      print(0 and 7)
      print(False and 9)
      print(7 and 9)
      
    1. 数据的布尔值(重点) 数据转成布尔的结果
      Python中的所有类型的数据都有布尔值
      所有零值和空值对应的布尔值是F,其他都是T
      常见的零值和空值:0、0.0、0000、‘’、“”、{}、[]、()、None
    • print(bool(0), bool(''))
      print(bool(12), bool(-2.15), bool('abc'))
      

四、赋值运算符

赋值运算符:

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

(重要!)重要结论:所有的赋值运算的功能都是给变量赋值,不会产生一个结果。(赋值运算的表达式没有结果)
所有的赋值运算符的左边必须是变量

a = 10
10 > 20
# print(a = 10)    # 报错
print(10 > 20)
    1. =
    • 定义变量或者重新给变量赋值的时候使用

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

    b = 10
    b += 2
    print(b) # 12

    b -= 3
    print(b) # 9

    b **= 2
    print(b) # 81

    b %= 2
    print(b) # 1

    
    
    1. 运算符的优先级
    • 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符

    • ** > *、/、%、// > +、-

    • 有括号先算括号里面的

    • b = 10 + 30
      c = 10 < 5 * 3    # c = 10 < 15  -> c = True
      print(c)
      

五、分支结构

    1. 流程控制
    • 顺序结构(默认) - 代码从上往下依次执行,每条语句执行一次
    • 分支结构 - 代码的执行看条件是否成立(if语句)
    • 循环结构 - 让代码重复(for、while)
    1. if分支结构
    • if单分支结构 满足条件执行某操作,条件不满足的时候操作就不执行

    • 语法:
      if 条件语句:
          代码段
      说明:
      if            关键字,固定写法
      条件语句       任何有结果的表达式,例如:数据,运算表达式(赋值除外)
      :             固定写法
      代码段         就是和if保持一个锁紧的一条或多条语句
      
      执行过程:
      先判断条件语句是否为True(如果条件语句不是布尔,就转换成布尔再看),
      如果True,就执行代码段,否则不执行
      
    • a = 40
      a += 20
      if a > 50:
          print('代1')
          print('代2')
          print('代3')
          print('代4')
      
  • 练习:如果指定的数是偶数就打印’偶数’

  • num = 22
    if num % 2 == 0:
        print('偶数')
    
    if not num % 2:
        print('偶数')
    
  • 练习:判断指定的数据是否是水仙花数

  • num = 153
    # 水仙花数:1 ** 3 + 5 ** 3 + 3 ** 3 == num
    bai = (num // 100) ** 3
    shi = (num // 10 % 10) ** 3
    ge = (num % 10) ** 3
    
    if bai + shi + ge == num:
        print('水仙花数')
    
    1. if双分支结构 满足条件执行某操作,不满足执行另一个操作
    • 语法:
      if 条件语句:
          代码段1(满足才执行的代码)
      else:
          代码段2(不满足才执行的代码)
      代码段3(不管满不满足都执行)
      
  • 练习:根据年龄打印成年未成年

  • age = 28
    if age >= 18:
        print('成年')
    else:
        print('未成年')
    
  • 3.if多分支结构 根据不同条件做不一样的事情

    • if 条件语句1:
          代码段1
      elif 条件语句2:
          代码段2
      elif 条件语句3:
      
      ...
      else:
          代码段N
          
      前提:多个条件中如果其中一个条件满足,其他的条件绝对不会满足
      
  • 练习:将分数分成A(90以上),B(80,90),C(60,80),D(60以下)四个等级

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值