上一篇
本次分享循环语句。
正文
Python 中的循环语句有 for 和 while。上一张也分享了while语句,while语句也是一个循环语句。
看下循环控制。
while循环的格式
while 判断条件(condition):执行……
例子
计算1到100的和
num=1sum=0while num<=100:sum+=numnum+=1print(sum)
最后结果
5050 这里的while循环有时候,可以是一个无限的循环
var=1while var==1:num=input("请输入数字")print('您输入的内容是:',num)
执行
请输入数字212您输入的内容是: 212请输入数字212您输入的内容是: 212请输入数字
退出,直接 点击编辑器的
或者 CTRL+C 来退出当前的无限循环。
无限循环在服务器上客户端的实时请求非常有用。
当然whlie循环还可以搭配else。即不满足while的条件,执行else的语句
var=2while var==1:num=input("请输入数字")print('您输入的内容是:',num)else:print('这是一个偶数')
我们看下执行结果
这是一个偶数 这里,在没法执行的while循环的时候,执行else。
简单的while语句
var=2while var==1: print('您输入的内容是:',var)else: print('这是一个偶数')
但是这样执行写一个行 代码。切记。
for循环,迭代str或者list当中所有的元素。
来一个演示
listone=[1,2,3,4]for item in listone:print(item)else:print("执行结束")
结果:
1234执行结束
字符串的演示
listone="12346"for item in listone:print(item)else:print("执行结束")
结果
12346执行结束
在for循环中,增加break,里面还需要用到if else 语句。
listone=[1,2,3,4]for item in listone:if item==2:breakelse:print(item)else:print("执行结束")
结果
1range()
如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列
for i in range(1,9):print(i)
结果
12345678
相当于
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)
结果
0369
那么在遍历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 = 5while n > 0:n -= 1if n == 2:breakprint(n)print('循环结束。')
结果
43循环结束。
使用continue
n = 5while n > 0:n -= 1if n == 2:continueprint(n)print('循环结束。')
结果:
4310循环结束。
for循环中使用break
for item in range(1,20):if item==5:breakelse:print(item)
结果
1234
使用continue
for item in range(1,20):if item==5:continueelse:print(item)
结果:
1234678910111213141516171819
pass语句:
即空语句
for item in range(1,20):if item%2==0:passelse:print(item)
结果:
135791113151719
在写代码的使用可以经常用到。
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)
结果:
2123B345
只输出key
for key in dictone.keys():print(key)
结果:
2B
通用的value是
for value in dictone.values():print(value)
结果:
123345
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=92x2=4 2x3=6 2x4=8 2x5=10 2x6=12 2x7=14 2x8=16 2x9=183x3=9 3x4=12 3x5=15 3x6=18 3x7=21 3x8=24 3x9=274x4=16 4x5=20 4x6=24 4x7=28 4x8=32 4x9=365x5=25 5x6=30 5x7=35 5x8=40 5x9=456x6=36 6x7=42 6x8=48 6x9=547x7=49 7x8=56 7x9=638x8=64 8x9=729x9=81
实现一个冒泡排序
listone=[9,323,422,2,24]max=0for 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]=maxelse:max=listone[x+1]print(listone)
结果:
[2, 9, 24, 323, 422]这里演示的几个例子,循环语句在后续的工作中会频繁使用,大家一定要掌握里面如何使用。