上一篇
本次分享循环语句。
正文
Python 中的循环语句有 for 和 while。上一张也分享了while语句,while语句也是一个循环语句。
看下循环控制。
while循环的格式
while 判断条件(condition):
执行……
例子
计算1到100的和
num=1
sum=0
while num<=100:
sum+=num
num+=1
print(sum)
最后结果
5050
这里的while循环有时候,可以是一个无限的循环
var=1
while var==1:
num=input("请输入数字")
print('您输入的内容是:',num)
执行
请输入数字212
您输入的内容是: 212
请输入数字212
您输入的内容是: 212
请输入数字
退出,直接 点击编辑器的
或者 CTRL+C 来退出当前的无限循环。
无限循环在服务器上客户端的实时请求非常有用。
当然whlie循环还可以搭配else。即不满足while的条件,执行else的语句
var=2
while var==1:
num=input("请输入数字")
print('您输入的内容是:',num)
else:
print('这是一个偶数')
我们看下执行结果
这是一个偶数
这里,在没法执行的while循环的时候,执行else。
简单的while语句
var=2
while var==1: print('您输入的内容是:',var)
else: print('这是一个偶数')
但是这样执行写一个行 代码。切记。
for循环,迭代str或者list当中所有的元素。
来一个演示
listone=[1,2,3,4]
for item in listone:
print(item)
else:
print("执行结束")
结果:
1
2
3
4
执行结束
字符串的演示
listone="12346"
for item in listone:
print(item)
else:
print("执行结束")
结果
1
2
3
4
6
执行结束
在for循环中,增加break,里面还需要用到if else 语句。
listone=[1,2,3,4]
for item in listone:
if item==2:
break
else:
print(item)
else:
print("执行结束")
结果
1
range()
如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列
for i in range(1,9):
print(i)
结果
1
2
3
4
5
6
7
8
相当于
listone=[1,2,3,4,5,6,7,8]
for i in listone:
print(i)
range 想要指定间隔
for i in range(0,10,3):
print(i)
结果
0
3
6
9
那么在遍历list的时候,可以使用range
listone=[1,2,3,4,5]
for i in range(len(listone)):
print('元素:',listone[i],"索引是:",i)
结果
元素:1 索引是:0
元素:2 索引是:1
元素:3 索引是:2
元素:4 索引是:3
元素:5 索引是:4
这样既拿到了元素,还可以知道元素的对应的下标。
break语句流程如下:
continue语句流程图如下:
结合到循环语句:
break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。
continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
while中使用break
n = 5
while n > 0:
n -= 1
if n == 2:
break
print(n)
print('循环结束。')
结果
4
3
循环结束。
使用continue
n = 5
while n > 0:
n -= 1
if n == 2:
continue
print(n)
print('循环结束。')
结果:
4
3
1
0
循环结束。
for循环中使用break
for item in range(1,20):
if item==5:
break
else:
print(item)
结果
1
2
3
4
使用continue
for item in range(1,20):
if item==5:
continue
else:
print(item)
结果:
1
2
3
4
6
7
8
9
10
11
12
13
14
15
16
17
18
19
pass语句:
即空语句
for item in range(1,20):
if item%2==0:
pass
else:
print(item)
结果:
1
3
5
7
9
11
13
15
17
19
在写代码的使用可以经常用到。
for循环如何遍历循环输出字典的每一项
dictone={'2':'123','B':'345'}
for item in dictone.items():
print(item)
结果:
('2', '123')
('B', '345')
遍历所有的key,value,分别输出
for key,value in dictone.items():
print(key)
print(value)
结果:
2
123
B
345
只输出key
for key in dictone.keys():
print(key)
结果:
2
B
通用的value是
for value in dictone.values():
print(value)
结果:
123
345
for循环 while循环,break,continue经常使用。另外pass时候用作一个调条件的空行。
实例展示:
我们用for循环可以实现九九乘法表
for i in range(1,9):
for k in range(i, 10):
print("%dx%d=%d" % (i, k, k * i), end="\t ")
print()
结果:
1x1=1 1x2=2 1x3=3 1x4=4 1x5=5 1x6=6 1x7=7 1x8=8 1x9=9
2x2=4 2x3=6 2x4=8 2x5=10 2x6=12 2x7=14 2x8=16 2x9=18
3x3=9 3x4=12 3x5=15 3x6=18 3x7=21 3x8=24 3x9=27
4x4=16 4x5=20 4x6=24 4x7=28 4x8=32 4x9=36
5x5=25 5x6=30 5x7=35 5x8=40 5x9=45
6x6=36 6x7=42 6x8=48 6x9=54
7x7=49 7x8=56 7x9=63
8x8=64 8x9=72
9x9=81
实现一个冒泡排序
listone=[9,323,422,2,24]
max=0
for item in range(len(listone)-1):
for x in range(len(listone)-1-item):
if listone[x]>listone[x+1]:
max=listone[x]
listone[x]=listone[x+1]
listone[x+1]=max
else:
max=listone[x+1]
print(listone)
结果:
[2, 9, 24, 323, 422]
这里演示的几个例子,循环语句在后续的工作中会频繁使用,大家一定要掌握里面如何使用。