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()

python第十三课——嵌套循环的更多相关文章

  1. python六十三课——高阶函数之sorted

    演示sorted函数的使用,以及和sort的区别:我们将sorted和sort进行一番比较:相同点:它们都是来实现排序的操作(功能层面)不同点:列表中的sort函数,它执行完毕后会直接影响原本这个li ...

  2. python第二十三课——dict中的函数

    dic1 = {...} dic2 = {...} dic1.update(dic2) 1.update(dict):dic1调用update传入dic2,如果dic2中的内容在dic1中不存在,那么 ...

  3. Kali Linux Web 渗透测试视频教程— 第十三课-密码破解

    Kali Linux Web 渗透测试— 第十三课-密码破解 文/玄魂 目录 Kali Linux Web 渗透测试— 第十三课-密码破解............................... ...

  4. NeHe OpenGL教程 第四十三课:FreeType库

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  5. NeHe OpenGL教程 第三十三课:TGA文件

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  6. NeHe OpenGL教程 第二十三课:球面映射

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  7. NeHe OpenGL教程 第十三课:图像字体

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  8. 初学 Python(十三)——匿名函数

    初学 Python(十三)--匿名函数 初学 Python,主要整理一些学习到的知识点,这次是匿名函数. # -*- coding:utf-8 -*- #关键字lambda定义的函数都是匿名函数 #做 ...

  9. Python第十三天 django 1.6 导入模板 定义数据模型 访问数据库 GET和POST方法 SimpleCMDB项目 urllib模块 urllib2模块 httplib模块 django和web服务器整合 wsgi模块 gunicorn模块

    Python第十三天   django 1.6   导入模板   定义数据模型   访问数据库   GET和POST方法    SimpleCMDB项目   urllib模块   urllib2模块 ...

随机推荐

  1. Html dom 赋值

    1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...

  2. 2Java基础语法

    1.标识符      1.1 标识符以字母.下划线.美元符开头      1.2 标识符由字母.下划线.美元符或数字组成      1.3 标识符区分大小写      1.4 不能与Java关键字同名 ...

  3. Hadoop shell 一查就会

    Hadoop shell 命令有三种格式 hdfs + dfs (必须是dfs) Hadoop + dfs Hadoop + df 命令 说明 hadoop 版本查看 hadoop version h ...

  4. fzu 2163

    Problem 2163 多米诺骨牌 Accept: 17    Submit: 50Time Limit: 1000 mSec    Memory Limit : 32768 KB  Problem ...

  5. Win10+Ubuntu双系统安装

    笔者使用的是华硕FX50J装的双系统,之前使用过Dell的游闸安装过,但是没有碰到那么多问题.所以觉得有必要记录下.安装双系统之前,电脑先安装了win10(win10也崩过几次).下面开始安装双系统步 ...

  6. C#设计模式--模板方法模式(学习Learning hard 设计模式笔记)

    class Program { static void Main(string[] args) { //创建一个菠菜实例并调用模板方法 Spinach spinach = new Spinach(); ...

  7. jQuery基础(工具函数,浏览器信息,检测节点,字符串,$.extend())

    1.获取浏览器的名称与版本信息   在jQuery中,通过$.browser对象可以获取浏览器的名称和版本信息 如$.browser.chrome为true,表示当前为Chrome浏览器, $.bro ...

  8. 详解php 获取文件名basename()函数的用法

    PHP 中basename()函数给出一个包含有指向一个文件的全路径的字符串,此函数返回基本的文件名,本篇文章收集了关于使用PHP basename()函数获取文件名的几篇文章,希望对大家理解使用PH ...

  9. vs2017 + Python3.6 +Django1.11 连接mysql数据库

    不废话直接来. vs2017创建一个新的python web项目之后默认链接数据库是sqlite.但是我就想连接到Mysql 上面玩,于是开始倒腾了.下面是步骤 1.修改settings.py 文件需 ...

  10. C# xml通过xslt转换为html输出

    html效果截图: 1.首先分析html代码结构: 结果如图: 2.调用接口返回的数据格式: 3.由第一步可看出每2个数据为一行并排显示,后台返回的数据总数可能为奇数个或偶数个,对应该生成的xml结构 ...