Python 基础之循环结构for及break pass continue
一.for 循环
#循环 变量 迭代 都是一个意思
#把列表里面的元素意义的拿出来就是遍历
listvar = ["one","two","three","four","five","six"]
#用len获取列表的长度
res = len(listvar)
print(res)
1.通过while 的遍历来介绍for
例:
i = 0
while i < len(listvar):
# "0 1 2 3 4 5"
res = listvar
print(res)
i+=1
setvar = ["one","two","three","four","five","six"]
#while 循环有它的局限性,不能够变量集合这样的数据类型
#所以for循环应用而生 特指用来遍历的
'''
i = 0
while i < len(setvar):
res = setvar[i]
print(res)
i+=1
'''
2.for 语法
代码解析:
把容器类型数据里面的每一个元素,后期我们还学迭代器 生成器 range对象
for 变量 in 可迭代的对象:
print(变量)
代码解析:
把容器类型数据类目的每一个元素,依次的拿出来赋值变量i
知道所有数据依次遍历完毕退出循环
#遍历列表
container = ["one","two","three","four","five","six"]
#遍历元组
container =("one","two","three","four","five","six")
#遍历集合
container = {"one","two","three","four","five","six"}
#遍历字典
container ={'top':'剑圣','middle':'狐狸','bottom':'德莱文'}
#变量字符串
container = "我爱你亲爱的菇凉,见到你我就心慌"
for i in container:
print(i)
3.使用for遍历等长的二级容器
listvar = [("王林","王思思","王美丽"),["马云","马花","马思"],["王宝","马宝","宋小宝"] ]
#变量的解包
a,b = 1,2
print(a,b)
a,b =[3,4]
print(a,b)
a,b = {5,6}
print(a,b)
print("7777777777777777777777777777")
for a,b,c in listvar:
"""
a,b,c ("王林","王思思","王美丽")
a,b,c ["马云","马花","马思"]
a,b,c ["王宝","马宝","宋小宝"]
"""
print(a,b,c)
listvar = [(1,2),[3,4],[5,6]]
for a,b in listvar:
print(a,b)
4.使用for遍历不等长的二级容器
listvar = [("王林","王思思"),["马花","马美丽"],["王宝","宋小宝"] ]
for i in listvar:
for j in i :
print(j)
5.range对象
#语法:
range(start,end,step)
start : 开始值
end :结束值
step:步长
使用方式和切片语法类似,高位end那个值取不到,取到end之前的那个值
#1个参数的情况 range(5) => 0 1 2 3 4 默认0开始 高位5取不到,最大取到4
print(range(5),type(res))
res = list(range(5))
print(res)
for i in range(5):
print(i)
#2个参数的情况
for i in range(3,10):
print(i)
#(33个参数的情况 2 4 6 8 10
#正序
for i in range(2,11,2):
print(i)
#倒序
#打印9~1 9 8 7 6 5 4 3 2 1
for i in range(9,0,-1):
print(i)
二.关键字:break pass continue
1.pass 过 作用:做占位符使用
if 5 == 5:
pass
i = 0
while i < 10:
pass #约定俗成,在循环里面什么也不行的情况下,给予友好提示
i+=1
2.break 终止当前循环
(只能用于循环当中)
'''打印1~10,如果遇到5终止循环'''
i=1
while i <=10:
if i == 5:
break
print(i)
i+=1
#break 终止当前循环,外面循环一次,里面循环三次,只不过当j=3的时候,循环终止了
i = 1
while i<=3:
j = 1
while j<=3:
if j == 3:
break
print(i,j)
j+=1
i+=1
#1,1 1,2 2,1 2,2 3,1 3,2
3.continue 跳过当前循环,从下一次循环开始
例:
#打印1~10 不打印5
i = 1
while i <= 10:
if i == 5:
i +=1 #要小心跳过循环之后,后面的代码不执行,从循环开始在执行
continue
print(i,end=" ") #让它打印一行并且空格
i+=1
例:
#打印1~100 所有不含4的数字
#解析:
98 如果取出98的各位数和十位数
8 => 98 % 10 => 8
9 =>98 // 10 => 9
通过地板除 // 可以获得一个数的高位
通过取余 % 可以获取一个数的低位
#第一个方法
i = 1
while i<100:
if i // 10 == 4 or i % 10 == 4:
i += 1
continue
print(i)
i+=1
#第二个方法
i=1
while i <= 100:
num = str(i)
if '4' in num:
i+=1
continue
print(i)
i+=1
Python 基础之循环结构for及break pass continue的更多相关文章
- 第五篇:python基础之循环结构以及列表
python基础之循环结构以及列表 python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...
- python基础之循环结构以及列表
python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...
- python之while循环用法举例,break与continue的区别,格式化输出及运算符
一.while循环的基本结构 while 条件: 代码块(循环体) else: 当上面的条件为假. 才会执行 执行顺序:判断条件是否为真. 如果真. 执行循环体. 然后再次判断条件....直到循环条件 ...
- Python 基础之循环结构 while
一.while循环介绍 while 循环 可以提高代码的效率,减少代码的冗余 while 条件表达式: code1 code2如果条件表达式成立,返回Ture,就执行其中的代码块 1.基本 ...
- python分支和循环结构
本文收录在Python从入门到精通系列文章系列 1. 分支结构 1.1 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构.然而仅有顺序结构并不能解决 ...
- Python 基础 while 循环
Python 基础 while 循环 while 循环 在生活中,我们遇到过循环的事情吧?比如循环听歌.在程序中,也是存才的,这就是流程控制语句 while 基本循环 while 条件: # 循环体 ...
- 基础语法-循环结构for
基础语法-循环结构for 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.for循环格式 for(初始化表达式;循环条件表达式;循环后的操作表达式){ 执行语句(循环体); } ...
- 基础语法-循环结构do...while
基础语法-循环结构do...while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.do...while语句格式 do{ 执行语句; }while(条件表达式); 温馨提示: ...
- 基础语法-循环结构while
基础语法-循环结构while 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.while语句格式 while(条件表达式){ 执行语句; } 二.while语句案例 /** * ...
随机推荐
- Draw.io--自认为最好用的流程图绘制软件
draw.io 是一个强大简洁的在线的绘图网站,支持流程图,UML图,架构图,原型图等图标.支持Github,Google Drive, One drive等网盘同步,并且永久免费.如果觉得使用Web ...
- acm数论之旅(转载) -- 快速幂
0和1都不是素数,也不是合数. a的b次方怎么求 pow(a, b)是数学头文件math.h里面有的函数 可是它返回值是double类型,数据有精度误差 那就自己写for循环咯 LL pow(LL a ...
- Codeforce 977E Cyclic Components
dfs判断图的连通块数量~ #include<cstdio> #include<algorithm> #include<vector> #include<cs ...
- Kubernetes的控制器之Deployment的定义
Deploy 的控制器定义参数介绍 [root@master manifests]# kubectl explain deploy KIND: Deployment VERSION: extensio ...
- 23 JavaScript规范与最佳实践&性能&箭头函数
大多数web服务器(Apache等)对大小写敏感,因此命名注意大小写 不要声明字符串.数字和布尔值,始终把他们看做原始值而非对象,如果把这些声明为对象,会拖慢执行速度 对象是无法比较的,原始值可以 不 ...
- TCP网络调试助手上提示错误:“1035 未知错误”的有效解决方法,本人实测确实可行
转:https://blog.csdn.net/jacket_/article/details/97415651 图片转载:https://blog.csdn.net/Alice_YCR/articl ...
- 动态规划-爬楼梯问题java实现
最近开始看算法导论,研究了一下动态规划,下面就开始直入主题开始记录近期看的第一个知识点动态规划.提起动态规划就不得不提几个动态规划的金典问题爬楼梯.国王金矿.背包问题.今天就仔细分析一下爬楼梯问题. ...
- CF908D 【New Year and Arbitrary Arrangement】
蒟蒻渣渣禹小心翼翼发布题解.... 这道题,嗯,期望,dp,好,我们有思路了.... however, 主要问题在于字符串无限延伸,so,我们需要考虑记录前缀的关键量来为DP设置终止状态. 我们不妨设 ...
- 二分(求l-r中的平方数)
题目描述 多次查询[l,r]范围内的完全平方数个数 定义整数x为完全平方数当且仅当可以找到整数y使得y*y=x 输入描述:第一行一个数n表示查询次数之后n行每行两个数l,r输出描述:对于每个查询,输出 ...
- Esp32的一些资料链接
http://wiki.ai-thinker.com/doku.php/utils/esp32_idf_menuconfig http://wiki.ai-thinker.com/doku.php ...