python-条件控制

Python3 条件控制

条件控制

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
  • if 语句

      Python中if语句的一般形式如下所示:
      if condition_1:
          statement_block_1
      elif condition_2:
          statement_block_2
      else:
          statement_block_3
      
      如果 "condition_1" 为 True 将执行 "statement_block_1" 块语句
      如果 "condition_1" 为False,将判断 "condition_2"
      如果"condition_2" 为 True 将执行 "statement_block_2" 块语句
      如果 "condition_2" 为False,将执行"statement_block_3"块语句
      Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。
    
  • 注意:

      1、每个条件后面要使用冒号(:),表示接下来是满足条件后要执行的语句块。
      2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
      3、在Python中没有switch – case语句。
    
  • 实例

    以下是一个简单的 if 实例:

      #!/usr/bin/python3
      var1 = 100
      if var1:
         print ("1 - if 表达式条件为 true")
         print (var1)
      
      var2 = 0
      if var2:
         print ("2 - if 表达式条件为 true")
         print (var2)
      print ("Good bye!")
    

    执行以上代码,输出结果为:

      1 - if 表达式条件为 true
      100
      Good bye!
    

    从结果可以看到由于变量 var2 为 0,所以对应的 if 内的语句没有执行。

  • 以下为if中常用的操作运算符:

      操作符	               描述
       <	               小于
       <=	               小于或等于
       >	               大于
       >=	               大于或等于
       ==	               等于,比较对象是否相等
       !=	               不等于
    
  • 实例

    该实例演示了数字猜谜游戏

      #!/usr/bin/python3 
      number = 7
      guess = -1
      print("数字猜谜游戏!")
      while guess != number:
          guess = int(input("请输入你猜的数字:"))
          if guess == number:
              print("恭喜,你猜对了!")
          elif guess < number:
              print("猜的数字小了...")
          elif guess > number:
              print("猜的数字大了...")
    

    执行以上脚本,实例输出结果如下:

      数字猜谜游戏!
      请输入你猜的数字:1
      猜的数字小了...
      请输入你猜的数字:21342
      猜的数字大了...
      请输入你猜的数字:7
      恭喜,你猜对了!
    
  • if 嵌套

    在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。

      if 表达式1:
          语句
          if 表达式2:
              语句
          elif 表达式3:
              语句
          else
              语句
      elif 表达式4:
          语句
      else:
          语句
    
  • 实例

      # !/usr/bin/python3
      num=int(input("输入一个数字:"))
      if num%2==0:
          if num%3==0:
              print ("你输入的数字可以整除 2 和 3")
          else:
              print ("你输入的数字可以整除 2,但不能整除 3")
      else:
          if num%3==0:
              print ("你输入的数字可以整除 3,但不能整除 2")
          else:
              print  ("你输入的数字不能整除 2 和 3")
    
  • 将以上程序保存到 test_if.py 文件中,执行后输出结果为:

      $ python3 test.py 
      输入一个数字:6
      你输入的数字可以整除 2 和 3
    
  • Test示例

      # ---if格式---
      '''
      1. 单个if判断,为真则执行<some code>
      if <逻辑判断是否为真>:
      	<some code>
      
      2. if else对, 为真则执行code1,否则执行code2
      if <逻辑判断是否为真>:
      	<some code1>
      else:
      	<some code2>
      
      3. if elif else 多个条件依次判断,符合在执行相应的代码并退出后续判断
      if <逻辑判断1是否为真>:
      	<some code1>
      elif <逻辑判断2是否为真>:
      	<some code2>
      elif <逻辑判断3是否为真>:
      	<some code3>
      else:
      	<other code>
      
      4. 单行条件判断 即三目操作
      z = x if <条件判断为真> else y
      为真则将x赋给z,否则将y赋给z
      
      '''
      
      # ---example1---
      a = 3
      if a > 2:
      	print('a > 2')
      
      # ---example2---
      if a > 5:
      	print('a > 5')
      else:
      	print('a <= 5')
      
      # ---example3---
      score = 77
      if score <= 60:
      	print('不及格')
      elif score <= 80:
      	print('良好')
      elif score <= 90:
      	print('优先')
      elif score == 100:
      	print('满分')
      else:
      	print('分数大于100')
      
      # ---example4---
      x = 12
      y = 23
      z = x if x > y else y
      print('max of x and y is', z)
    
posted @ 2016-11-24 10:25  银河统计  阅读(181)  评论(0编辑  收藏  举报