循环

一、 for - in循环

语法结构:
for 变量 in 集合:
#针对可迭代对象(集合);循环的次数,取决于迭代集合的大小

遍历列表:

 a=[1,2,3,4]
for i in a:print(i)

结果:

1
2
3
4

遍历列表及索引:

a=['php','人工','数据']
for x,y in enumerate(a):print(x,y)

输出结果:

0 php
1 人工
2 数据

遍历元组:

a=('php','人工','数据')
for x,y in enumerate(a):print(x,y)

输出结果

0 php
1 人工
2 数据

遍历字典

items(): 返回字典内key-value对
keys():返回字典内所有key列表
values(): 返回字典内所有value列表

例:

a={'php':"123",'人工':"456",'数据':"789"}
for x,y in a.items():print(x,y)
a={'php':"123",'人工':"456",'数据':"789"}
for x in a.keys():print(x)
a={'php':"123",'人工':"456",'数据':"789"}
for x in a.values():print(x)

遍历字符串:

a="123456"
for i in a:print(i)

练习:
构造一个列表,其有正数、负数、零构成。将其中的正数输出。

a=["123","345","-234", False]
for i in a:if int(i)> 0:print(i)

输出结果:
123;345

二、for—in次数控制

2.1 语法结构:
range(开始值,结束值,间隔)
#range函数生成数字列表,可以指定:开始值,结束值,间隔 ——结束值不在区间中

a=range(0,10,5)
print(a)#生成可迭代对象,(类型是对象)

输出结果

range(0, 10, 5)

加上列表

a=range(0,10,5)
print(list(a))#把可迭代对象转换成一个列表

输出结果:

[0, 5]

注意:

c = range(1,5)#默认距离1
print(list(c))
d = range(5)#默认从0开始
print(list(d))

输出结果:
[1, 2, 3, 4]
[0, 1, 2, 3, 4]

2、2 循环:

for x in range(1,4):print(x,"循环")

输出结果:
1 循环
2 循环
3 循环

练习1:计算1到100的和。

x=range(1,101)
y=sum(x)
print(y)

输出结果:5050
也可以一步到位:

print(sum(range(1,101)))

练习2:输出1到100内所有的奇数。

for x in range(1,100):if x%2==1:print(x)
for x in range(1,100,2):print(x)

练习3:将1到100以内所有被7整除的数输出。

for x in range(1,100):if x%7==0:print(x)
for x in range(0,100,7):if x!=0:print(x)

三、while循环

语法结构:
while 条件表达式:
         循环体
#shile循环:条件为真时,运行循环体;需要注意:最后要让条件表达式不成立

增值案例:

i = 0
while i < 5:
print(i)
i += 1

输出结果:
1
2
3
4

减值案例:

i = 5
while i > 0:
print(i)
i -= 1

输出结果:
5
4
3
2
1
练习1:输出10以内的所有奇数:

x=1
while x<10:if x%2==1:print(x)x+=1
x=1
while x<10:print(x)x+=2

输入名字案例(空值):

name="" #知识点:空值为假,非空值为真
while not name:name=input('请输入您的姓名:')
print("您好:",name)

输出结果:

请输入您的姓名:
请输入您的姓名:
请输入您的姓名:
请输入您的姓名:张三
您好: 张三

练习2:
将1到100以内所有被7整除的数输出。
• 方式A:通过控制初始值和循环变量的方式。
• 方式B:通过循环结构嵌套选择结构的方式。

x=0
while 0<x<100 :print(x)x+=7x=1
while x<100:if x%7==0:print(x)x+=1

四、while遍历

基础案例:
挨个遍历

a = [7,9,8,10]
i = 0
while i < len(a):print(a[i])i += 1

输出结果:
7
9
8
10
奇偶数遍历:

a=[1,3,45,4,5,6,7,867,65,735]
i=0
x=[]#x定义成偶数
y=[]#定义成奇数
while i<len(a):if a[i]%2==0:x.append(a[i])else:y.append(a[i])i+=1
print("偶数:",x)
print("奇数:",y)

为索引遍历
输出结果:
偶数: [4, 6]
奇数: [1, 3, 45, 5, 7, 867, 65, 735]

a=[1,3,45,4,5,6,7,867,65,735]
x=[]#x定义成偶数
y=[]#定义成奇数
while len(a)>0:i=a.pop()if i%2==0:x.append(i)else:y.append(i)
print("偶数:",x)
print("奇数:",y)

删除最后一位进行判断奇偶性,直到遍历完成。

偶数: [6, 4]
奇数: [735, 65, 867, 7, 5, 45, 3, 1]

练习:计算一个列表内:
• 奇数的个数。
• 偶数的个数。

a=[1,3,45,4,5,6,7,867,65,735]
x=[]#x定义成偶数
y=[]#定义成奇数
while len(a)>0:i=a.pop()if i%2==0:x.append(i)else:y.append(i)
print("偶数的个数:",len(x))
print("奇数的个数:",len(y))

输出结果:

偶数的个数: 2
奇数的个数: 8

五、跳出循环

语法结果:
循环(while或for-in)
    if表达式
        break
break语句:结束循环,完全结束一个循环,跳出循环体
核心理解:不需要完成整个循环

例:
列表内是否处在零值:

a=[1,3,45,0,4,5,65,735]
x=0
numbers=1
for y in a:print("这是第",numbers,"次循环")if y==0:x=1numbers+=1
if x==0:print("列表里没有零")
else:print("列表里有零")

输出结果:

这是第 1 次循环
这是第 2 次循环
这是第 3 次循环
这是第 4 次循环
这是第 5 次循环
这是第 6 次循环
这是第 7 次循环
这是第 8 次循环
列表里有零
当有break时:
a=[1,3,45,0,4,5,65,735]
x=0
numbers=1
for y in a:print("这是第",numbers,"次循环")if y==0:x=1breaknumbers+=1
if x==0:print("列表里没有零")
else:print("列表里有零")

输出结果:

这是第 1 次循环
这是第 2 次循环
这是第 3 次循环
这是第 4 次循环
列表里有零

练习:
使用break,判断一个列表内,是否存在奇数

a=[2,4,45,0,4,5,65,735]
x=0
number=1
for y in a:print("这是第",number,"次循环")if y%2==1:x=1breaknumber+=1
if x==1:print("存在")
else:print("不存在")

输出结果:

这是第 1 次循环
这是第 2 次循环
这是第 3 次循环
存在

六、跳出循环continue

语法:
语法结果:
循环(while或for-in)
    if表达式
        continue
continue语句:结束循环,忽略当前循环的剩下语句,从下一次执行
核心理解:本次循环的后续不执行了,从下一轮继续。

输出列表内的奇数:

a=[2,4,45,0,4,5,65,735]
for i in a:if i%2==0:continueprint(i)
45
5
65
735

自我理解:当你满足条件时,continue就给你结束,后面就不输出了,此次循环就结束了,开始下一循环。

输出指的关注的值:

a = [14,46,76,-98,68,13,78,45,65,-100,200]
for x in a:if 0<=x<=100:continueprint("请关注异常值:",x)
请关注异常值: -98
请关注异常值: -100
请关注异常值: 200

练习:输出一个列表内,所有被3整除的数

a = [14,46,76,-98,68,13,78,45,65,-100,200]
b =[]
for i in a:if i%3!=0:continueb.append(i)
print("所有被三整除的数",b)

输出结果:

所有被三整除的数 [78, 45]

循环(for、while、break、continue)相关推荐

  1. Shell教程(四):条件语句、循环语句、break/continue

    在编写shell脚本,有可能是一种情况,当你需要采取一个路径两条路径.所以,需要利用条件语句,让程序作出正确的决策和执行正确的动作. UNIX Shell支持条件语句,从而根据不同的条件下执行不同的操 ...

  2. php中循环跳过,php for循环的exit / break / continue /goto 停止、跳过循环、继续循环...

    php 与 JavaScript 有很多相似的地方: for循环中 也有两个相同: 只是 php 比 js 多了一个 exit , 其他用法一样: for($i =1;$i<11;$i++){ ...

  3. 重学JavaSE 第4章 : 顺序结构、分支语句、循环结构、break, continue, return区别

    文章目录 一. 程序流程控概述 二. 顺序结构 三.分支语句 2.1.分支语句1:if-else结构 2.1.1.输入语句 2.2. 分支语句2:switch-case结构 四.循环结构 4.1.fo ...

  4. Java学习 循环(While,doWhile,Break,Continue)、方法

    目录 1.循环 1.1 While 1.2 doWhile 1.3Break 1.4BreakOutFor 1.5 Continue 2 方法 2.1概述 2.2方法的声明 2.3方法的使用 1.循环 ...

  5. python 双层for循环_day05-Python运维开发基础(双层循环、pass/break/continue、for循环)...

    #### 双层循环练习 #十行十列小星星 j =0while j<10:#逻辑代码写在下面 #打印一行十个小星星 i =0while i<10:print("*",en ...

  6. 6.4_[Java 数组]-详解 break/continue 跳转语句

    ################################################## 目录 详解 break/continue 跳转语句 b/c 跳转语句对二重循环的影响 break ...

  7. C++ 退出双层for循环,解决 break、return、continue无法实现问题

    遇到一个情景,采用双层for循环 遍历图像的像素,当找到某一个像素点满足条件时,退出双层for 循环 . 首先了解一下 continue.break.return 各自功能用法: 1.continue ...

  8. Java中return结束循环,Java中break、continue、return在for循环中的使用

    Java中break.continue.return在for循环中的使用 发布时间:2020-09-25 02:01:45 来源:脚本之家 阅读:81 作者:mrr 引言:在使用循环的时候,循环里面带 ...

  9. Python 循环控制语句-break/continue

    break 概述 Python break语句,就像在C语言中,打破了最小封闭for或while循环. break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执 ...

  10. python结束循环_python中break、continue 、exit() 、pass终止循环的区别

    python中break.continue .exit() .pass区分 1.break:跳出循环,不再执行 Python break语句,就像在C语言中,打破了最小封闭for或while循环. b ...

最新文章

  1. Gartner 认定 Microsoft 为具有远见卓识的云基础结构即服务提供商
  2. Service Worker 离线无法缓存Post请求的问题解决
  3. 趣谈网络协议笔记-二(第十八讲)
  4. 慢动作输出 Linux 命令结果并用彩色显示
  5. 你说我做丨为你定制「大局观版」职场设计课
  6. 对话OTTVerse创始人Krishna Rao Vijayanagar:创业之初,挑战与机遇并存
  7. list python 访问 键值对_基础|Python常用知识点汇总(中)
  8. 机器学习算法 Python R速查表
  9. 对比 SQL Server 2005 和 Oracle
  10. “菜”鸟理解.NET Framework(CLI,CLS,CTS,CLR,FCL,BCL)
  11. 4.Python标准库_文件管理 (部分os包,shutil包)
  12. java double转string
  13. 成人高考计算机专业,成人高考计算机类里的哪个专业好找工作?
  14. 计算机无法安装新字体,xp系统电脑安装新字体后无法使用的解决方法
  15. 密码学应用的四个进化阶段
  16. java垃圾回收文件分析
  17. 物料分拣系统matlab仿真,基于PLC的物料分拣控制系统设计与仿真(含梯形图)
  18. Android APK反编译得到Java源代码和资源文件
  19. 程序员的读书方法和反思方法!!:我们该如何学习知识?反思总结?
  20. BZOJ 2002 HNOI2010 弹飞绵羊 分块

热门文章

  1. JVM内存设置参数分析
  2. fatal error LNK1104:无法打开***.exe
  3. 金蝶K3后台SQL修改数据-科目余额表、科目表核算项目
  4. 64位计算机可以装32位的系统么,电脑是要装32位还是64位系统?
  5. 求助matlab崩溃问题的解决方案
  6. 2018年清华大学民商法学考研经验分享
  7. 不再有“寒冬”的人工智能
  8. java于网络:P2P聊天系统
  9. WebSocket 实现聊天功能
  10. qps tps rps 区别