美文网首页
2018-08-23-day04-循环和分支

2018-08-23-day04-循环和分支

作者: oxd001 | 来源:发表于2018-08-23 17:07 被阅读0次

    一、分支结构

    1.if分支结构

    1).if

    '''
    if 条件语句:
    执行语句块
    说明:
    a. if:python中的关键字,'如果'的意思,用来做判断
    b. 条件语句:最终的结果会被转换成布尔值
    c. :冒号:冒号是固定写法,必须写!
    d.执行语句块:这儿可以是多行语句,但是每行语句必须和前面的if保持一个缩进
    '''
    执行过程:先判断条件语句的结果是否为True,如果为True就执行冒号后面的执行语句块,
    否则直接执行if模块后的其他语句

    练习:用一个变量保存一个学生的成绩,要求:当学生的成绩大于90的时候,打印优秀,不管成绩多少,都把成绩打印出来

    score = 80
    print('%d:'%(score),end='')
    if score>90:
        print("优秀")
    

    2)if-else

    语法:
    if 条件语句:
    执行语句块1
    else:
    执行语句块2
    说明:else:关键字(else后面的冒号不能省)
    执行过程:先判断条件语句的结果是否为True,如果是就执行语句块1,执行完语句块1后再 执行其他语句,如果是False,就执行语句块2,执行完语句块2之后就执行其他的语句

    要求年龄大于等于18就打印成年,否则打印未成年

        age = 12
        if age >=18:
            print("成年")
        else:
            print("未成年")
    

    3).if-elif-else

    语法:
    if 条件语句1:
    语句块1
    elif 条件语句2:
    语句块2
    elif 条件语句3:
    语句块3
    ...
    else:
    语句块n
    #要求成绩大于90分打印优秀,80-90打印良好,60-79及格,60以下不及格

    score = 78
    if socre > 90:
        print('优秀')
    elif score >= 80:
        print('良好')
    elif socre >= 60:
        print('及格')
    else:
        print('不及格')
    

    执行顺序:先判断if里的条件语句,如果第一个条件语句不满足,则执行下一个判断

    4).if语句的嵌套

    每个if分支中都可以嵌套其他的if语句
    if 条件1:
    执行语句1
    if 条件2:
    执行语句2
    else:
    执行语句3
    else:
    执行语句4

    练习:成绩和年龄,如果成绩大于等于90并且年龄是18及以上1000元,如果年龄小于18就获取奖金1200元,如果成绩小于90不管多少岁,就没有奖金

    score = 90
    age = 18
    if score >= 90:
        if age >= 18:
            print("获得1000元奖金")
        else:
            print("获得1200元奖金")
    else:
        print("没有奖金")
    

    练习:产生一个随机数,判断随机数是否是偶数,如果是打印偶数,否则打印奇数,如果能被4整除,再打印能被4整除
    import:是python中导入模块或者模块中内容的关键字
    random是python内置的产生随机数的模块
    import random

        number = random.randint(10,20) #产生一个10到20的随机整数,并且存到numer中
    

    注意:10到20(包括20)都可能产生

    import random
    number = random.randint(1,100)
    if number % 2:
        print('奇数:%d'%(number))
    else:
        print('偶数:%d'%(number))
        if not number%4 :
            print('%d可以被4整除'%(number))
    
    
    
    #判断一个数是否是偶数的两种写法
    if number % 2 ==0:
        print('偶数')
    
    #推荐
    if not number % 2:
        print('偶数')
    
    if number % 2:
        print('奇数') 
    
        
    
    #判断一个字符串是否是空串
    #方法一:
    
    if str =='':
        print("是空串")
    else:
        print("不是空串")
    
    
        #方法二:
        if len(str1) == 0:
            print("是空串")
        else:
            print("不是空串")
    
        #方法三:
        if str1:
            print("不是空串")
        else:
            print("是空串")
    
    

    二、循环结构

    python中的循环结构有两种:for循环和while循环

    1.for循环的结构

    for 变量名 in 序列:
        循环体
    

    a.for:关键字
    b.变量名:和声明变量时的变量名的要求一样
    c.in:关键字
    d:序列,容器(数据本身是由多个数据组成),例如:字符串、列表、字典、元组、集合、range、生成式和生成器
    e.循环体:需要重复执行的代码

    执行过程:让变量去序列中取数据,每取一次数据,执行一次循环体,取完为止

        #range函数时python中的内置函数,作用是产生指定范围中的数字
        '''
        range(N):产生0~N-1的所有整数
        range(N,M):产生N~M-1的所有整数
        range(N,M,step):从N开始,每step产生一个整数,到M之前
        
        xrange()是python2中的函数,python3中用range代替了
        '''
    

    练习:计算1+2+3+...+100

    s = 0
    for i in range(101):
        s += i
    print(s)
    

    练习统计1~1000中能白3整除的个数

      #方法一
        count=0
        for i in range(0,1001,3):
            if not i:
                count = 0
            else:
                count+=1
        print(count)
    
      #方法二
        count=0
        for _ in range(3,1001,3):
            count += 1
        print(count)
    

    注意:for循环中用来获取序列值的变量,在循环体不是一定要使用
    如果不用,那么变量名可以命名为_

    2.while循环

    1).结构

    while 条件语句:
        循环体
    

    2).说明:

    while:关键字
    条件语句:结果是True或者False
    循环体:要重复执行的代码

    3).执行过程:

    判断条件语句的结果是否为True,如果为True就执行循环体,执行完循环体在判断条件语句是否为True
    使用while循环算出1~100的和

        s=0
        i=1
        while i < 101:
            s += i
            i += 1
        print(s)
    

    练习,问,循环结束后,x的值和sum1的在建瓯,分别是多少

        x = 1
        sum1 =0
        while x <= 5:
            x += 1
            sum1 += x
        #x=6
        #sum1=2+3+4+5+6=20
        #x=6,sum1=20
    
        #for循环和while循环的选择和比较
        #for循环的循环次数是有限的,并且是固定的:while循环的循环次数不确定
        #for循环:1.遍历序列中的值。2.循环次数确定
        #while循环:1.死循环。2.循环次数不确定
    
        #练习:找大于10000的数中第一个能够被23整除的数
        num =10000
        while num % 23:
            num += 1
        print(num)  
        #10005
    

    3.break和continue关键字

    break和continue放到循环体有特殊的功能
    break:程序执行到break,整个循环直接结束,然后执行循环外面的其他的语句
    continue:程序执行到continue,结束本次循环,进入到下次循环的判断
    

    相关文章

      网友评论

          本文标题:2018-08-23-day04-循环和分支

          本文链接:https://www.haomeiwen.com/subject/knsmiftx.html