zoukankan      html  css  js  c++  java
  • python第十三课——嵌套循环


    2.嵌套循环:

    概念:循环中再定义循环,称为嵌套循环;

    【注意】嵌套循环可能有多层,但是一般我们实际开发最多两层就可以搞定了(99%的情况)

    格式:

    1).while中套while常用

    2).while中套forin

    3).forin中套while

    4).forin中套forin更常用

    演示forin...forin:

    格式如下:

    for i in 容器对象:

    语句块1

    for j in 容器对象:

    语句块2

    执行流程:

    模拟数据:
    r1 = range(1,3)
    
    r2 = range(1,3)
    
    for i in r1:
    
    print('我是外层循环...')
    
    for j in r1:
    
    print('我是内层循环...')
    
    print("i=%d,j=%d" %(i,j))

    先执行外层循环,将r1中的1给到i,然后执行外层循环体,

    打印完'我是外层循环...',遇到了内层循环,执行它,将r2中的1给到j,然后执行内层循环体,

    打印完'我是内层循环...',再打印i=1,j=1,意味着内层循环的第一次结束了,

    进行第二次,...(i=1,j=2),内层循环结束了,外层循环开始迭代,将r1中的2给到i,以此类推...

    总结:

    1).外层循环执行一次,内层循环全部执行一遍

    2).如果外层循环需要执行m次,内层循环需要执行n次,嵌套循环一共会执行m*n次


    案例一:
    #演示嵌套循环的使用:
    r1=range(1,3)
    r2=range(1,3)
    for i in r1:
        print('我是外层循环...')
        for j in r2:
            print('我是内层循环...')
            print('i=%d,j=%d' %(i,j))

    案例二:
    使用嵌套循环打印各种图形:
    图形一:
    *****
    *****
    *****
    *****
    *****
    for i in range(1,6): #外层循环控制行数
        for j in range(1,6): #内层循环控制每一行打印的次数
            print('*',end='')
        #此处的print()的作用仅仅是为了换行
        print()

    图形二:
    *
    **
    ***
    ****
    *****
    for i in range(1,6):
        for j in range(1,i+1):
            print('*',end='')
        # 此处的print()的作用仅仅是为了换行
        print()
  • 相关阅读:
    Leetcode 171. Excel Sheet Column Number
    Leetcode 206 Reverse Linked List
    Leetcode 147. Insertion Sort List
    小明一家人过桥
    Leetcode 125. Valid Palindrome
    Leetcode 237. Delete Node in a Linked List
    Leetcode 167 Two Sum II
    张老师的生日
    Leetcode 27. Remove Element
    Leetcode 283. Move Zeroes
  • 原文地址:https://www.cnblogs.com/hankleo/p/10427042.html
Copyright © 2011-2022 走看看