zoukankan      html  css  js  c++  java
  • day4 ---- 流程控制

    一、if循环

    二、while 循环

    三、for循环

    一、if循环

    固定语法:1、Python用缩进来表示代码的归属;2、同一缩进的代码,称之为代码块。

    补充:布尔值位False数据由哪些:0,None,'',[],{}
    布尔值可以直接用来判断
    变量名也可以用来判断,因为变量名指向的值对应的就是True或False

    语法结构:

     1 if 条件:
     2     代码1
     3     代码2
     4     代码3                
     5     ...
     6 
     7 if 条件:
     8     代码1
     9     代码2
    10     代码3
    11      ...   
    12 else:  # 不能单独使用,必须和if,while,for配合使用
    13     代码1
    14     代码2
    15     代码3
    16     代码4
    17     ...
    View Code
     1 if 条件:
     2     代码
     3     ...
     4 elif 条件:
     5     代码
     6     ...
     7 elif 条件:
     8     代码
     9     ...
    10 else:
    11     代码
    if...elif...else..形式

    注意:1、if ...elif ...else..在同一级别是时只会选择一个代码块执行,即在if、elif和else中选择

       2、if循环可以嵌套

    二、while循环

    while 循环的语法结构

    while 条件:
        代码1
        代码2
        代码3
        ...
    View Code

    break:立即结束本层循环(只针对它所属于的那一个while有效)

    continue:跳出本次循环,直接开始下一次循环

    from_db_username = 'jason'
    from_db_password = '123'
    
    
    while True:
        username = input("please input your username>>>:")
        password = input("please input your password>>>:")
        if username == from_db_username and password == from_db_password:
            print('欢迎老板,我是23号技师,很高兴为您服务')
            break
        else:
            print('没钱滚蛋~')
    print("到点了")
    练习1
    # 循环打印1,2,3,5,6,7,8,9,10
    n = 1
    while n < 11:
        # 打印之前应该先判断当前数字是否是4,如果是4,不打印,重新循环打印下面的数字
        if n == 4:
            n += 1
            continue
            #break
        print(n)
        n += 1
    练习2

    *****重点:建立一个全局标志位     如:flag = True 

    from_db_username = 'jason'
    from_db_password = '123'
    
    flag = True  # 定义一个全局的标志位
    while flag:
        username = input("please input your username>>>:")
        password = input("please input your password>>>:")
        if username == from_db_username and password == from_db_password:
            print('欢迎老板,我是23号技师,很高兴为您服务')
            while flag:
                cmd = input('please input your command>>>:')
                if cmd == 'q':
                    flag = False
                print('%s is running'%cmd)
        else:
            print('没钱滚蛋~')
    
    print("到点了")
    例题

     while + else 结构:

    1 # while+else
    2 n = 1
    3 while n < 5:
    4     if n == 3:
    5         break
    6     print(n)
    7     n += 1
    8 else:
    9     print('while循环正常结束了')
    示例

    注意:只有当while循环依据条件正常结束才会走else代码,如果是主动结束的break,那么不会走else

    三、for 循环

    1.for 循环的引入

      a.我们可以用while循环打印出列表里的元素,根据列表索引值,但是对字典里的元素却无法打印,因为字典是无序的且对外展示的只有key值

      b.for 循环不依赖于索引取值

    2.for循环的语法结构 

    for 变量名 in 容器类型:
        代码1
        代码2
        代码3
        ...

     内置方法:len()  --  获取数据类型(容器类型)的个数,字符串是特例 获取的是字符串中字符的个数

    *****range在Python2和Python3中的区别

    a、Python2中range是返回一个列表,xrange就是Python3中的range返回的是一个对象

    b、Python3中range是返回一个对象,形象比喻成是一个“老母猪”,需要值的时候才会给你

    Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 17:54:52) [MSC v.1900 32 bit (Intel)] on win32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> range(1,10)
    range(1, 10)

    3、range()的用法:

    range()又叫迭代器(关于迭代器的含义以后会更新!)特点是:顾头不顾尾

    for i in range(1,10):
        print(i)
    >>>:1,2,3,4,5,6,7,8,9

    4、练习打印99乘法表,并理解其中的逻辑和换行

    for i in range(1,10):
        for j in range(1,i+1):
            print('%s*%s = %s'%(i,j,i*j),end=" ")
        print()

    关于换行:print自带换行,print()单独放在一行就是一行,end=“ ”意思是用空格结尾,如果去掉会有内层换行,建议多敲几遍尝试

  • 相关阅读:
    02.两数相加
    1480. 一维数组的动态和
    01. 两数之和
    67.二进制求和
    文献阅读(QoS-Aware Web Service Recommendation by Collaborative Filtering)
    服务计算---课程总结报告
    125. 验证回文串
    Docker 常用命令
    Docker 安装
    RESTful
  • 原文地址:https://www.cnblogs.com/qinsungui921112/p/11121040.html
Copyright © 2011-2022 走看看