美文网首页
Python循环

Python循环

作者: 陈康_d3f7 | 来源:发表于2020-04-14 11:40 被阅读0次

    流程控制语句:

    分类

    1.顺序结构
    2.判断结构解析,如果……否则……
    3.循环结构

    判断结构

    格式一

    ① if 条件表达式
    ② 语句块

    如果条件表达式的结果为True,那么就会立即进入到if的内部去执行语句块,
    等到语句块执行完毕了,就可以认为if结构结束了,但是程序一定会去执行;

    如果条件表达式的结果为False,那么就会不会进入到if的内部去执行语句块,
    也就意味着if结构已经结束了,但是程序一定会去执行

    #需求:从键盘读入一个正整数,判断其奇偶性
    num = int(input('请输入一个正整数:'))
    if num % 2 == 0:
        print('是偶数...')
    if num % 2 == 1:
        print('是奇数...')
    print('程序结束了...')
    

    格式二

    ① if 条件表达式:
    ② 语句块1
    ③ else:
    ④ 语句块2

    执行流程:
    计算机会先执行①,遇到了if关键字会先执行条件表达式,
    如果条件表达式的结果为True,那么就会立即进入到if的内部去执行语句块②,
    等到语句块②执行完毕了,整个if...else结构就结束了,但是程序一定会去执行③
    如果条件表达式的结果为False,那么就会立即进入到else的内部去执行语句块④,
    等到语句块④执行完毕了,整个if...else结构就结束了,但是程序一定会执行

    age = eval(input("请输入你的年龄: "))
    if age >= 18:
        print("你已经成年了。。。")
    else:
        print("回家写作业去吧。。。")
    print("小弟弟,出来混迟早要还的……")
    
    #使用判断结构if...else重构之前三元中的案例:两个数中的较大值
    num1 = 10
    num2 = 20
    if num1 > num2:
     print('较大值为:{}'.format(num1))
    else:
     print('较大值为:{}'.format(num2))
    

    练习:

    需求:

    模拟一个购物系统,通过键盘输入:单价,数量,付款金额;
    最后计算得到应收金额和找零;
    单价:price
    数量:amount
    支付金额:money
    总金额:totalPrice
    找零:change
    附加需求:
    满500元打8折

    price = eval(input("请输入商品的价格: "))
    amount = eval(input("请输入商品的数量: "))
    totalPrice = price * amount      #计算总消费金额
    print("您应该消费了%s钱"%totalPrice)
    money = eval(input("请输入付款金额: "))
    
    if money < totalPrice:
        chajia = totalPrice - money
        print("总金额不足,差%s钱,请继续加款。。。"%chajia)
    else:
        change = money - totalPrice
        print("应找您{}钱".format(change))
        if totalPrice >= 500:
            print("恭喜您获得八折优惠!!!")
            totalPrice2 = totalPrice * 0.8
            good = float(totalPrice -totalPrice2)
            print("您优惠的总金额为,",totalPrice2,"钱,优惠了",good,"元")
    

    格式三:

    if 条件表达式1:
    语句块1
    elif 条件表达式2:
    语句块2
    elif 条件表达式3:
    语句块3
    elif 条件表达式y:
    语句块y
    else:
    语句块z

    执行流程:

    计算机一定会先执行开始语句,遇到了if关键字执行条件表达式1,如果条件表达式1的结果为True,那么就进入if内部执行语句块1,执行结束后,整个if elif else结构结束了,但是程序一定会执行else。如果条件表达式1的结果为False,那么执行elif后面的条件表达式2,如果条件表达式2的结果为True,那么就进入elif内部执行语句块2,执行结束后,整个if elif else结构结束了,但是程序一定会执行else。如果所有的条件表达式的结果都为False,最终会执行else中的语句块z,执行结束后,程序一定会执行else

    age = 30
    if age < 0 or age > 130:
        print('你可能不是人...')
    elif age <= 20:
        print('伦家还很小的啦!么么哒...')
    else:
        print('别追我了,我已经有两个娃了...')
    

    需求:

    从键盘输入小明的期末考试成绩
    当成绩为100分时,奖励一辆BMW;
    当成绩为(80,99]时,奖励一台8848;
    当成绩为[60,80]时,奖励一本从入门到精通只需33天;
    其它时,暴打一顿!

    注意事项:

    如果多个elif后面的条件表达式是互斥关系,那么谁上谁下无所谓
    如果多个elif后面的条件表达式是包含关系,那么范围小的要在范围大的上面议:

    score = int(input('请输入小明的考试成绩:(分)'))
    if score < 0 or score > 100:
        print('输入的成绩有误!请重新输入...')
    else:
        if score == 100:
            print('奖励一辆BMW')
        elif score > 80:
            print('奖励一台8848')
        elif score >= 60:
            print('奖励一本参考书')
        else:
            print('老子要揍你了!!555555~~~~')
    

    while循环:

    有四要素组成:

    ①.初始化条件(执行一次)一个起始数据/起点,一般使用变量来进行存储
    ②.循环条件(可能执行多次)循环合适结束全靠它,执行结果为True,那么循环继续,反之,循环就终止了

    补充:需要和初始化条件配合

    ③.迭代条件(可能执行多次)用来改变初始化条件中的数据,只有变化了,才有终止的那一刻
    ④.循环体(可能执行多次)需要重复执行的逻辑代码
    格式:

    while ②:



    执行流程:① -> ② -> ④ -> ③ -> ② -> ④ -> ③ -> ② -> ⑤

    案例1:

    演示while循环的使用
    需求:打印10次德玛西亚。。。

     i = 0
    while i < 10:
        i +=1
        print("德玛西亚。。。")
    

    案例2

    需求:打印1~100之间的偶数,并且得到偶数的个数和总和
    有计数和累加的思想 --> 可以定义变量来接受

    count = 0  # count的作用是为了记录偶数的个数
    sum1 = 0  # sum1的作用是为了记录偶数的总和
    i = 1
    while i < 101:
     if i % 2 == 0:
         print(i)
     count += 1
     sum1 += i
     i += 1
    print('1~100之间偶数的个数为:%d' % count)
    print('1~100之间偶数的总和为:%d' % sum1)
    

    案例3:

    需求:
    打印1~150,
    如果是3的倍数追加'foo',
    如果是5的倍数追加'biz',
    如果是7的倍数追加'baz'
    效果如下:
    1
    2
    3 foo
    4
    5 biz
    6
    7 baz
    15 foo biz
    105 foo biz baz
    150 foo biz

    i = 1
    while i <= 150:
        print(i, end="")
        if i % 3 == 0:
            print(" foo", end="")
        if i % 5 == 0:
            print(" biz", end="")
        if i % 7 == 0:
            print(" baz", end="")
        # 以下的print()的作用仅仅是为了换行
        print()
        i += 1
    
    

    相关文章

      网友评论

          本文标题:Python循环

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