day02_运算符和if语句--4.27

python2103dengqingqing_ 0426回顾

  1. python是动态的解释性语言

  2. 基础语法

  • 注释

    • 单行注释 注释可以放在代码的前行面 后行面 已经后同行
    • 多行注释
  • 标识符

  • 关键字 特殊的标识符 :True False None

  • 语句 :一般一条语句一行,结尾不需要加分号,同行多条语句之间需要用分号或逗号隔开

  • 常用数据和对应的类型

    • 数字数据 int float
    • 文本数据 str
    • 布尔数据
    • 空值
    • type()
  1. 输入和输出
  • input()

  • print()

  1. 变量
  • 变量名=值

    • 变量名是标识符不能是关键字 见名知意义
    • 名称用小写单词之间用下划线隔开
    • 使用变量就是使用变量中保存的值
    • 重新给变量赋值
  • python c java 变量和重新赋值原理?

python2103dengqingqing_ 0427总结

运算符

  • python中常用的运算符: 数学运算符 比较运算符 逻辑运算符赋值运算符

1、数学运算符

  • 数学运算符 + - * / % // **
  1. 运算符 + - * / 和数学的+ - * / 运算一样
  • 3.1 -> 3.0009 ,3.10001 是计算机浮点数的原因
  1. % ——求余数

    • x % y —— 求X除以Y的余数

    • 应用1,判断一个数字能否被另一个数字整除(取余)

    • 应用2,取一个数的低位数,

      取一个数的个位数除10 后两位除100 后三位数除1000

  2. // -——整除(求商,商向小取正)

  • 应用1 保留高位数去掉低位数
  1. ** ——幂运算

    • 先幂再乘除后加减

2、比较运算

  • 比较运算符 = != > >= < <=

  • 所有的比较运算符的运算结果都是布尔

  • python中的比较运算符支持表示范围的连写方式(其他不支持

    x = 0.1
    print(0 <= x <= 1)
    

3、逻辑运算符

  • 逻辑运算符:and(逻辑与运算) or(逻辑或运算) not(逻辑否运算)
  1. and(逻辑与运算)

    • 应用场景:要求多个条件同时满足,就是将都多个条件用and连接

      相当于生活中的并且

    • 运算符规则:两个都是True结果才是True ,否则结果就是False

      True and True -> True

      True and False -> False

      False and True -> False

      False and False -> False

  2. or(逻辑或运算)

    • 应用场景:多个条件中只要有一个条件满足的时候,用or连接,或者

    • 运算规则:两个都是False 结果才是False,只要有一个True结果就是True

      True and True -> True

      True and False -> False

      False and True -> False

      False and False -> False

  3. not(逻辑否运算)

    • 应用场景:对某个条件进行否定

    • 运算规则:

      not True -> False

      not Fase -> True

      y = 78
      y % 3 == 0 and y % 7 == 0
      print('能否同时不被3和7整除:',not (y % 3 == 0 and y % 7 == 0))
      print('能否同时不被3和7整除:',not x % 21 == 0)
      
  4. 练习

    num3 = 6
    print((num3 % 10 + num3 % 100 // 10) % 2 == 0)
    pirnt((num3 % 10 + num3 // 10 % 10) % 2 == 0)
    

4、逻辑运算符拓展

  1. 短路操作

    • 逻辑与的短路操作:表达式1 and 表达式2 ,如果表达式1的结果是Fasle,则表达式2的代码不执行
    • 逻辑与的短路操作:表达式1 or 表达式2 ,如果表达式1的结果是True,则表达式2的代码不执行
  2. 运算对象不是布尔值

    • 表达式1 and 表达式2 如果表达式1的布尔值是True,整个与运算的结果是表达式2

      ​ 如果表达式1的布尔值是False,整个与运算 的结果是表达式1
      表达式1 or 表达式2 如果表达式1的布尔值是False,整个与运算 结果是表达式2
      ​ 如果表达式1的布尔值是True,整个与运算的结果是表达式1

print(1 and 5)  #5
print(0 and 5)  #0
print(1 or 5)   #1
print(not 10) #False
print(not None)  #True
  1. 补充:数据的布尔值(非常重要)

    • python中所有的数据都是布尔值

    • 所有的零值和空值对应的布尔值是False 其他的都是True

    • 零值和空值:0,0.0 ,0.00 None

5、赋值运算符

  1. 赋值运算符 : = += -= *= /= %= //= **=

    • 重要结论: 1)所有的赋值运算符的功能都是用来给变量赋值,没有计算结果。(所有的赋值运算都没有结果)
      2) 所有的赋值运算符的左边都必须是变量
    • 变量= 数据 将数据保存到变量中
  2. 复合赋值运算符+= -= *= /= %= //= **=

    • 变量 += 数据 变量=变量+数据 先将变量中的保存的数据取出来,和右边的数据进行相加后的结果,再将结果重新赋值给变量

    • 注意 这里的变量必须先赋值

      a = 3
      a *= 3
      print(a)
      
  3. 运算符的优先级

    • 数学运算符 >比较运算符 >逻辑运算符 >赋值运算符
      ** > * / % // > + -
    • 有括号先算括号里面的

6、if 分支结构

  1. 流程控制

    • 顺序结构(默认)代码从上到下一次执行,代码只执行一次
    • 分支结构 根据条件判断去执行或不执行代码
    • 循环结构 让代码重复执行
  2. if分支结构

    • if单分支结构 满足条件执行,某个操作,不满足条件的不执行

    • 语法:

      if 条件语句:

      ​ 代码段

    • 说明:

      • if 关键字,固定写法

      • 条件语句 任何有结果的表达式 (除了赋值语句以外的表达式), 比如 数据 已赋值过的变量 运算表达式 函数调用表达式

      • : 固定写法(必须要写,注意输入法)

      • 代码段 和 if 保持一个缩进的一条或者多条语句(满足条件才执行)

      • 执行过程:
        先判断条件语句的结果是否为Ture,如果式True就是执行代码段,否则就不执

        a = 100
        if a:
            print('代码段1')
            print('代码段2')
        
        if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
            print('闰年')
        

  3. if 双分支结构 满足条件的执行某个操作,条件不满足的时候执行另外的操作

    • 语法:

      if 条件语句:

      ​ 代码段1(满足条件要执行的代码)

      else:

      ​ 代码段2(不满足条件要执行的代码)

    if num % 2 == 1:
        print('奇数')
    else:
        print('偶数')
    # 方法二
    if num % 2:
        print('奇数')
    else:
        print('偶数')
    
  4. if 多分支结构 根据不同的条件执行不同的操作(条件之间满足:其中一个条件满足了,另外的条件绝对不会满足)

    • 语法:
      if 条件语句1:
      代码段1
      elif 条件语句2:
      代码段2
      elif 条件语句3:
      代码段3

      else:
      代码段N
      其他语句

      # 方法一
      if 0 <= age <= 3:
          print('儿童')
      elif 4 <= age <= 17:
          print('少年')
      elif 18 <= age <= 28:
          print('青年')
      elif 29 <= age <= 39:
          print('壮年')
      elif 40 <= age <= 59:
          print('中年')
      else:
          print('老年')
      
      
      # 方法二:
      if age <= 3:
          print('儿童')
      elif age <= 17:
          print('少年')
      elif age <= 28:
          print('青年')
      elif age <= 39:
          print('壮年')
      elif age <= 59:
          print('中年')
      else:
          print('老年')
      
      
      height = 180
      weight = 160
      if height > 175:
          print('跳远')
      if weight > 170:
          print('摔跤')
      

作业

选择题

  1. print(100 - 25 * 3 % 4) 应该输出什么? (B)

    A. 1

    B. 97

    C. 25

    D. 0

  2. 下列哪种说法是错误的(A)。

    A. 除字典类型外,所有标准对象均可以⽤于布尔测试

    B. 空字符串的布尔值是False

    C. 空列表对象的布尔值是False

    D. 值为0的任何数字对象的布尔值是False

  3. 下列表达式的值为True的是(B)。

    A. 3>2>2

    B. 1 and 2 != 1

    C. not(11 and 0 != 2)

    D. 10 < 20 and 10 < 5

  4. Python不⽀持的数据类型有(A)。

    A. char

    B. int

    C. float

    D. list

  5. (多选)n = 6784,以下能够获取到7 的⽅法有(C,D)。

    A. n / 1000 % 100

    B. n % 1000 / 100

    C. n // 100 % 10

    D. n // 10 % 100 // 10

  6. 运⾏以下程序,当从键盘上输⼊12,运⾏结果是(A)。

    x = (input())
    print(type(x))
    

    A. <class 'str'>

    B. <class 'int'>

    C. 出错

    D. <class 'dict'>

  7. 下列表达式的运算结果是(D ) 。

    a = 100
    b = False
    print(a * b > -1)
    

    A. False

    B. 1

    C. 0

    D. True

填空题

  1. 查看变量中数据的类型的函数名是( type() )。
  2. 已知 x = 3 == 3 ,执⾏结束后,变量x的值为(True)。
  3. 已知 x = 3 ,那么执⾏语句 x += 6 之后,x的值为(9)。
  4. 表达式 3 ** 2 的值为(9),表达式 3 * 2 的值为(6),表达式 4 ** 0.5 的值为(2)。

编程题

  1. 写出判断⼀个数是否能同时被2和5整除的条件语句, 并且打印对应的结果。

    x = 68
    print('是否能同时被2和5整除:',x % 2 == 0 and x % 5 == 0) 
    
    answer:
    是否能同时被25整除: False
    
    
  2. 写出判断⼀个数是否能够被2或者5整除,但是不能同时被2或者5整除的条件语句, 并且打印对应

    的结果。

    a = 34
    print('是否能够被2或者5整除,但是不能同时被2或者5整除:',(x % 2 == 0 or x % 5 == 0)and x % 10 == 0)
    
    answer:
      是否能够被2或者5整除,但是不能同时被2或者5整除: False
    
    
  3. 假设今天的上课时间为15678秒,编程计算今天上课时间是多少⼩时,多少分钟,多少秒;以‘XX

    时XX分XX秒’的⽅式表示出来。

    例如:100秒表示成 0时1分40秒

    s = 15678
    print(s // 3600,'时',s % 3600 // 60,'分',s % 3600 % 60,'秒')
     
    answer:    
     42118
  4. 定义两个变量保存⼀个⼈的身⾼和体重,编程实现判断这个⼈的身材是否正常!

    公式: 体重(kg) / (身⾼(m)的平⽅值 ) 在18.5 ~ 24.9之间属于正常。

    输出格式: 是否正常:True/False

    height = 165
    weight = 60
    c = weight / height ** 2
    print('是否正常:',18.5 <= c <= 24.9)
    
    answer:    
     是否正常: False
    
    
    
    
  5. 根据输入的成绩的范围打印及格 或者不及格

    a = int(input('请输入成绩',))
    if a >= 60:
        print('及格')
    else:
        print('不及格')
     answer:    
     请输入成绩35
    不及格
    
  6. 根据输入的年纪范围打印成年或者未成年,如果年龄不在正常范围内(0~150)打印这不是人!

    b = int(input('请输入年龄',))
    if 18 <= b <= 150:
        print('成年')
    elif 0 <= b <18:
        print('未成年')
    else:
        print('不是人')
     answer:      
    请输入年龄190
    不是人
    
  7. 输入两个整数a和b,若a-b的结果为奇数,则输出该结果,否则输出提示信息a-b的结果不是奇数

    a = int(input('请输入整数a:',))
    b = int(input('请输入整数b:',))
    if (a - b) % 2 == 1:
        print(a - b )
    else:
        print('a-b的结果不是奇数')
        
     answer:      
     请输入整数a:20
     请输入整数b:10
     a-b的结果不是奇数
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值