Python基础-05 条件控制语句1

一、条件控制语句的功能

代码通常都是从上到下执行的,但如果加入条件控制语句,则只有满足条件,才会执行条件所控制的语句或代码块。

1.1    if语句

  1. 语法

          if  条件表达式:
                          代码块或语句
    
  2. 代码块的概念
    代码块就是实现特定功能的一组代码,同一代码块要么都执行要么都不执行,是实现代码分组的一个机制。

  3. if语句的执行流程
    先判断if后面的条件表达式的值(True或False);
    如果为True,则执行if后的语句或代码块;
    如果为False,则不执行。

  4. if语句案例

             #判断大小
                      num = 50
                      if num>20:
                               print("num比20大")
           
            # 如果要判断num是否大于20且小于40,可以使用逻辑运算符连接
                       num = 30
                       if num > 20 and num < 40:
                               print("num大于20且小于40")
    

1.2   input()函数

  1. input()函数的概念
        input()函数为输入函数,其返回值为string类型。当需要从键盘获得某些字符串值时,可以使用该函数。

  2. input()函数的应用
        当代码中遇到input()函数时,需要输入规定的值并按Enter才可以继续执行其后的代码。因此,input()可以起到暂停程序的功能。

  3. input()函数的案例

             #获得输入的用户名,当用户名为admin时,返回“欢迎光临”
             username = input("请输入用户名:")
             
             #判断用户名是否为admin
             if username == "admin":
                         print("欢迎光临")
    

1.3   if-else语句

  1. if-else 语法

              if  条件表达式:
              
                         语句或代码块
              else:
                         语句或代码块
    
  2. if-else 执行流程
    先判断条件表达式的值(True或者False)
    如果为True,执行if后的语句或代码块
    如果为False,执行else后的语句或代码块

  3. if-else 案例

        #判断工资大小,如果工资>=2000,返回“继续努力”;如果工资<2000,则返回“该换工作了”。
                       salary = int(input("请输入你的工资:"))
                       if salary >=2000:
                                print("继续努力")
                       else:
                                print("该换工作了")
    

1.4   if-elif(多个elif)-else

  1. if-elif-else语法

              if  条件表达式:
                        代码块或语句
              elif  条件表达式:
                        代码块或语句
              elif   条件表达式:
                        代码块或语句
               .
               .
               .
               else:
                        代码块或语句               
    
  2. if-elif-else执行流程
    从上到下依次判断条件表达式的值(True或者False)
    如果某个条件表达式为True,则执行其后的代码块且退出if-elif-else代码块
    如果某个条件表达式为False,则继续往下判断其他的条件表达式。
    如果所有的elif条件表达式均为False,则执行else后的代码块且退出
    if-elif-else代码块

    if-elif-else语句只能执行一个代码块的内容

  3. if-elif-else 案列

         salary = 30000
         if   salary >=30000:
                   print("有钱任性")
         elif salary >=  20000:
                   print("有钱真好")
         elif salary >=10000:
                   print("小康生活真美好")
         elif salary >=5000:
                   print("工资刚刚好")
         elif salary >=2000:
                   print("月光也开心")
         else:
                   print("花呗月月还")
         
         #当条件表达式为从大到小时,程序执行没有问题。当条件表示式为从小到大时,则只会执行第一条代码块。可以用逻辑运算符来解决这一问题。
           if  salary >=2000 and salary < 5000:
                       print("月光也开心")
           elif salary >=5000 and salary < 10000:
                       print("工资刚刚好")  
           elif salary >=10000 and salary <20000:
                       print("小康生活真美好")
           else:
                       print("有钱真好")       
    

二、if条件控制语句练习

练习1   判断某个月份是什么季节
3 4 5为春季,6 7 8为春季,9 10 11为春季12 1 2为春季

        方法一:
            month = 5
            if  month==3 or month == 4 or month == 5:
                        print(month,"春季")
            elif  month==6 or month == 7 or month == 8:
                        print(month,"夏季")
            elif  month==9 or month == 10 or month == 11:
                        print(month,"秋季")
            elif  month==12 or month == 1 or month == 2:
                        print(month,"冬季")
            else:
                        print(month,"该月份不存在")
                  
      方法二:
             month = 5
             #先排除错误的月份
            if  month > 12 or month < 1:
                        print(month,"该月份不存在")
            elif  3 <= month <=5:
                        print(month,"春季")
            elif  6 <= month <=6:
                        print(month,"夏季")
            elif  9 <= month <=11:
                        print(month,"秋季")
            else:
                        print(month,"冬季")

练习2    输入一个整数,通过程序判断该数字的奇偶性

                 #获取用户输入的整数
                  num =int(input("请输入一个整数:"))

                  #判断该整数的奇偶性
                  if num % 2 == 0:
                            print (num,"是偶数")
                  else:
                            print(num,"是奇数")

练习3   检查任意一个年份是否为闰年‘

              #获取用户输入的年份
              year = int(input("请输入任意一个年份:"))
             
              #判断该年份是否为闰年
              if year % 400 == 0:
                        print(year,"是普通闰年")
              elif  year % 4 == 0 and year %100 != 0:
                        print(year,"是世纪闰年")
              else:
                        print(year,"是平年")

练习4   5岁的狗相当于人类的几岁?
狗的前两年相当于人的10.5岁,之后每增加一年就增加4岁
比如狗狗5岁=10.5*2+(5-2)*4=33岁人

      方法一:
       #获取狗狗的年龄
        dog_age = float(input("请输入狗狗的年龄:"))
        
        #判断狗狗的年龄是否合法
        if dog_age < 0:
                    print("狗狗的年龄不能为负数")
        
        #2岁以下狗狗的年龄
        elif  0< dog_age <= 2:
                    human_age = dog_age * 10.5
      
        #2岁以上狗狗的年龄
        else:
                   human_age = 2*10.5 + (dog_age - 2) * 4
         print("狗狗的年龄",dog_age,"相当于人的年龄", human_age)

      方法二:
        #获取狗狗的年龄
        dog_age = float(input("请输入狗狗的年龄:"))
        
        #判断狗狗的年龄是否合法
        if dog_age > 0:
                    
	            #2岁以下狗狗的年龄
	            if  dog_age <= 2:
	                        human_age = dog_age * 10.5
	          
	            #2岁以上狗狗的年龄
	            else:
	                       human_age = 2*10.5 + (dog_age - 2) * 4
	             print("狗狗的年龄",dog_age,"相当于人的年龄", human_age)
	    else:
	            print("输入的年龄不合法")

三、while循环语句

  1. while 语法

      while 条件表达式:
                  代码块
      else:
                  代码块
    
  2. while语句执行流程
    先判断while后的条件表达式的值(True或者False)
    如果为True,则执行代码块,然后继续判断while后的条件表达式是否满足条件,依次类推,直到while后的条件表达式为False,退出循环。如果有else语句,则while条件表达式为False时,执行else语句

  3. 循环三要素

       #第一个 初始化表达式      通过初始化表达式定义初始变量
       i = 0
       #第二个  条件表示式       通过条件表示式设置循环执行次数 
       while i < 10:
                print(i)
       #第三个  更新表达式       通过更新表达式改变初始变量的值
                i += 1       
    

i= 0 先更新后打印    循环次数为10 ,打印结果为1-10
i= 0 先打印后更新    循环次数为10 ,打印结果为0-9

  1. while语句练习
    练习1 求100以内所有偶数之和

       方法一:
       i = 0
       #定义一个变量,保留所有偶数和
       sum = 0
       while i < 100:
              i += 1
              #判断1-100内的偶数
              if   i  % 2 == 0:
              #计算所有偶数的和
                      sum += i
       print("sum =",sum)
    
       方法二:
       i = 0
       sum = 0
       while i < 100:
               i += 2
               sum += i
       print("sum = ",sum)
    

练习2 求100以内所有9的倍数之和 以及个数

        方法一:
         i = 0
         j = 0
         #定义一个变量,保留所有偶数和
         sum = 0
         while i < 100:
                i += 1
                #判断1-100内的9的倍数
                if   i  % 9 == 0:
                #计算所有9的倍数的和
                        sum += i
                        j += 1
         print("sum = ",sum,"次数=",j)

         方法二:
         i = 0
         j = 0
         sum = 0
         while i < 100:
                 i += 9
                 sum += i
                 j += 1
         print("sum = ",sum,"次数=",j)      
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值