判断与循环

  判断语言  if/elif/else

  if语句:python中使用关键字if实现判断

  (1)if<condition>:(冒号表示判断的开始)

  (2)<statement>

  组成结构:

  A:if关键字,表示判断语句

  B:<condition>表示判断的条件,条件为真时,执行<statement>中的代码,条件不满足,<statement>中的代码不会执行

  C:冒号表示判断代码块的开始

  D:<statement>表示条件满足时,执行的代码块

  条件满足时:

  第四章     Python进阶_代码块

  第四章     Python进阶_浮点数_02

  条件不满足时:

  第四章     Python进阶_python_03

  没有输出结果:

  第四章     Python进阶_精度问题_04

  判断语句执行结束后,之后的代码需要回到判断语句开始时的缩进状态才能继续执行:

  第四章     Python进阶_浮点数_05

  第四章     Python进阶_精度问题_06

elif和else语句

  语法:

  一个完整的if结构:

  if  <condition 1>:

      <statements>

  elif<condition 2>:

    <syayements>

  elif.........

  elif<condition N>:<statements>

  else:<statements>

  说明:elif是else if 的缩写

  执行过程:

  条件<condition 1>满足,执行if后的代码块,跳过elif和else的部分

  条件<condition 1>不满足,跳过if后的代码块,转到第二个elif语句看条件<statements>是否满足,若满足,执行代码块,否则跳到下一个elif

  如果所有的if及elif都不满足,执行else代码块

  案例:

  第四章     Python进阶_代码块_07

  第四章     Python进阶_if语句_08

  Elif语句个数的限制:

  Elif语句个数没有限制,可以没有,可以有1个,也可以有多个

  不使用elif语句:

  第四章     Python进阶_python_09

  使用多个elif:

  第四章     Python进阶_代码块_10

  第四章     Python进阶_if语句_11

  else语句的个数限制:最多一个,可以没有,若出现,放在if和elif的后面

  注意:python中没有switch语句,可使用if—elif—else替代

判断条件

  范围:布尔型、数字、字符串、列表、元组、字典等结构

  在python中,大部分的值都被当作真,除了以下几种情况:
  A.False,包括所有计算结果为False的表达式:
  B.None,包括所有结果为None的表达式:
  C.整数0值,包括所有计算结果为0的表达式:
  D.空字符串、空列表、空字典、空集合、空元组:
  浮点数0.0值也被当作False:
  第四章     Python进阶_python_12  
  浮点数的精度问题对其作为判断条件的影响:
  不推荐使用浮点数作为判断条件,存在精度问题
  第四章     Python进阶_代码块_13

  出现问题,输出错误

  第四章     Python进阶_python_14

  使用and、or、not组合复杂的判断条件

  复杂的判断条件使用and、or、not组合,对应与、或、非操作:

  组合的对象是布尔类型的值:

  第四章     Python进阶_精度问题_15

  输出结果:

  第四章     Python进阶_python_16

  组合的对象不是布尔型的值:

  第四章     Python进阶_python_17

  and:如果两个值都是真,返回第二个值;如果至少一个为假,返回第一个为假的值

  第四章     Python进阶_python_18

  or:如果两个值都为假,返回第二个值;如果至少有一个值为真,返回第一个为真的值