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

最新文章

  1. HDOJ 1326. Box of Bricks 纯水题
  2. Image放大缩小在放进Imageview
  3. Eclipse for php + Xdebug搭建PHP的调试环境
  4. SqlServer一张表数据导入另一张表,收藏使用,工作中更新数据错误很有用
  5. ASP.NET easyUI--datagrid 通过ajax请求ASP.NET后台数据的分页查询
  6. struts2在web.xml中的配置
  7. ajax 清除缓存
  8. java中内部类的定义与访问规则
  9. Android 应用程序签名
  10. wampserver图标黄色
  11. strcmp函数
  12. apache泛域名解析
  13. 洛谷P2617 Dynamic Ranking(主席树,树套树,树状数组)
  14. 记录k8s:k8s1.8.4无坑离线安装
  15. 用Python进行SQLite数据库操作
  16. kali linux networking scanning Cookbok (第三章结尾笔记)
  17. springboot Cacheable(redis),解决key乱码问题
  18. anaconda 在内网中代理配置
  19. 【Java基础】10、Java中throw和throws的区别
  20. Jmeter遇到线程链接被重置(Connection reset by peer: socket write error)的解决方法

热门文章

  1. DataTable如何删除特定行
  2. Oracle时间换算:日,月,周数,星期,年
  3. [C语言] 数据结构-逻辑结构和物理结构
  4. mysql,存储引擎,事务,锁,慢查询,执行计划分析,sql优化
  5. java计算机二级笔记
  6. vue项目引入element
  7. HDU 2824 The Euler function --------欧拉模板
  8. Fork/Join
  9. 理解clear:both属性(转)
  10. 序列化模块2 pickle