例1 for打印数组
for i in range(5) :
print(i)
结果
C:\Users\lixiang\AppData\Local\Programs\Python\Python35\python.exe C:/Users/lixiang/PycharmProjects/py_s15/day2.py
0
1
2
3
4
Process finished with exit code 0
例2 for+if elif
oldboy_age = 30
for i in
range(5):
guess_age = int(input("age:"))
if guess_age
== oldboy_age:
print("correct!!!")
elif guess_age > oldboy_age:
print("try smaller..")
else:
print("try bigger...")
结果
age:23
try bigger...
age:25
try bigger...
age:28
try bigger...
age:30[l2]
correct!!!
age:31
try smaller..
例3 for+break
oldboy_age = 30
for i in
range(5):
guess_age = int(input("age:"))
if guess_age
== oldboy_age:
print("correct!!!")
break
elif guess_age >
oldboy_age:
print("try smaller..")
else:
print("try bigger...")
结果
age:22
try bigger...
age:39
try smaller..
age:30
correct!!!
例4 for循环结束后进行下一段语句的开始
oldboy_age = 30
for i in
range(5):
guess_age = int(input("age:"))
if guess_age
== oldboy_age:
print("correct!!!")
break
elif guess_age > oldboy_age:
print("try smaller..")
else:
print("try bigger...")
print("welcome
enter to the second level...")
结果
try bigger...
age:1
try bigger...
age:1
try bigger...
age:1
try bigger...
age:1
try bigger...
welcome enter to the second level...
这段语句的目的是运行正确后进入到下一段语句。如果直接在for循环外直接print,若输入5次错误了还会是进行到下一段语句。所以需要加入else exit()作为输入错误的结束。
例5 for else的用法
1 不加else
for i in range(10):
print(i)
if i
== 5:
break
print("循环顺利结束")
结果
0
1
2
3
4
5
循环顺利结束
此结果是不正确的,因为for循环并没有顺利结束
2 for+else
for i in range(10):
print(i)
if i == 5:
break
else:
print("循环顺利结束")
结果
0
1
2
3
4
5
没有 if i == 5:的结果
break
0
1
2
3
4
5
6
7
8
9
循环顺利结束
例6 for循环嵌套
for i in range(5):
for j
in range(5):
print(i,j)
结果
0 0
0 1
0 2
0 3
0 4
1 0
1 1
1 2
1 3
1 4
2 0
2 1
2 2
2 3
2 4
3 0
3 1
3 2
3 3
3 4
4 0
4 1
4 2
4 3
4 4
若在j的循环里加入if判断并break跳出的话,只跳出j的循环
for i in range(5):
for j
in range(5):
print(i,j)
if j
> 2:
break
结果
0 0
0 1
0 2
0 3
1 0
1 1
1 2
1 3
2 0
2 1
2 2
2 3
3 0
3 1
3 2
3 3
4 0
4 1
4 2
4 3
例 6 for+continue的用法
for i in range(5):
for j in range(5):
if j < 3:
break #跳出整个当前层循环,只跳一层
print(i,j)
结果
Process finished with exit code 0
若想实现只打印j大于3的结果就得用continue
for i in range(5):
for j
in range(5):
if j
< 3:
continue #跳出当次循环,执行下一次循环
print(i,j)
结果
0 3
0 4
1 3
1 4
2 3
2 4
3 3
3 4
4 3
4 4
浙公网安备 33010602011771号