zoukankan      html  css  js  c++  java
  • Python基础

    一、流程控制——while循环

    1.1语法

    ​ 我们有时候需要用循环重复来解决问题,例如登陆账号的时候,输入错误了,我们需要再重复进行输入。这时候我们就需要使用while进行循环,while循环也称条件循环。

    while True:
        user = 'qq'
        pwd = '123'
        inp_user = input('请输入你的账号:')
        inp_pwd = input('请输入你的密码:')
        if inp_user == user and inp_pwd == pwd:
            print('登陆成功')
        else:
            print('密码或账号错误')
    
    

    1.2 while + break

    ​ break可以在满足条件的时候结束当前循环。

    while True:
        user = 'qq'
        pwd = '123'
        inp_user = input('请输入你的账号:')
        inp_pwd = input('请输入你的密码:')
        if inp_user == user and inp_pwd == pwd:
            print('登陆成功')
            
            breka
            
        else:
            print('密码或账号错误')
    
    

    1.3 while + comtinue

    ​ comtinue可以结束本次循环,直接执行下一次循环。

    ​ 例如:在小于10的整数中,将3挑出,并将其它数字输出。

    a = 1
    while a < 10:
        if a == 3:
            a += 1
            continue
        print(a)
        a += 1
    
    

    ​ 注意,continue不能加在循环体的最后一步执行的代码,因为代码加上去毫无意义,

    1.4 while + else

    ​ else是和while同一个级别的代码,输入时不再while语句内。若语句中有break的时候,只有在break没有被执行的情况下才会执行else。

    ​ 注意,whie + elsa的形式一般不使用。

    二、流程控制——for循环

    2.1语法

    ​ for循环,用于循环容器数据类型。

    car_lis = ['Honda','BMW','Toyato','BYD']
    for i in car_lis:
        print(i)
      
    Honda
    BMW
    Toyato
    BYD
    

    ​ 字典取多个值的时候,也可以使用for循环。

    info_ = {'name':"qq",'hobby':'read'}
    for i in info_:
        print(i)
    
        
    name
    hobby
    

    ​ for循环的循环次数受限于容器类型的长度,而while循环的循环次数需要自己控制。

    ​ for循环也可以按照索引取值。

    for i in range(1,5):
        print(i)
        
    1
    2
    3
    4
    
    car_lis = ['Honda','BMW','Toyato','BYD']
    for i in range(len(car_lis)):
        print(i,car_lis[i])
        
    0 Honda
    1 BMW
    2 Toyato
    3 BYD
    

    2.2 for + break

    ​ for循环调出本层循环

    car_lis = ['Honda','BMW','Toyato','BYD']
    for car in car_lis:
        if car == 'Toyato':
            break
        print(car)
        
    Honda
    BMW
    

    2.3 for + continue

    ​ for循环调出本次循环,进入下一次循环。

    car_lis = ['Honda','BMW','Toyato','BYD']
    for car in car_lis:
        if car == 'Toyato':
            continue
        print(car)
      
    Honda
    BMW
    BYD
    

    2.4 for循环嵌套

    ​ 外层循环循环一次,内层循环循环所有的。

    n = 5
    for i in range(n + 1):
        for j in range(2 * n):
            if (n - i - 1) < j < (n + i - 1):
                print('*', end='')
            else:
                print(' ', end='')
        print('')
        
              
        *     
       ***    
      *****   
     *******  
    ********* 
    
    

    2.5 for + else

    ​ for循环没有break的时候触发else内部代码块。

    car_lis = ['Honda', 'BMW', 'Toyato', 'BYD']
    for i in car_lis:
        print(i)
    else:
        print('for循环没有被break中断掉')
        
    Honda
    BMW
    Toyato
    BYD
    for循环没有被break中断掉
    

    2.6 for循环实现Loading

    print('Loading')
    for i in range(6):
        print(".")
        
    Loading
    .
    .
    .
    .
    .
    .
    
    print('Loading', end='')
    for i in range(6):
        print(".", end='')
    
    Loading......
    

    ​ 补充: 表示原位打印,覆盖上一次的打印结果,将其删除后在打印本次,

    三、对比while和for

    3.1 while:

    ​ 会进入死循环(不可控),尽量少使用while循环;

    ​ 世间万物都可以作为循环对象。

    3.2 for

    ​ 不会进入死循环(可控),尽量使用for循环;

    ​ 只对容器类数据类型进行循环(可迭代对象)。

  • 相关阅读:
    与生命晒跑
    关于你有一条未读短信的静态单页
    【微收藏】来自Twitter的自动文字补齐jQuery插件
    chrome 插件个人使用推介
    vscode中检测代码中的空白行并去除的方法
    FTP文件乱码导致的无法删除
    git操作遇到的几个问题
    一个srand、rand结果相同的问题
    【verilog】单周期MIPS CPU设计
    【verilog】多周期MIPS CPU设计
  • 原文地址:https://www.cnblogs.com/tangceng/p/11285353.html
Copyright © 2011-2022 走看看