Python入门------for与for-else循环

代码1:

a = ["apple","orange","banana","grape"]

 for x in a:

 print(x)

代码2:

a = [["apple","orange","banana","grape"],(1,2,3)]

for x in a:

for x1 in x:

print(x1)

代码3:

a = [["apple","orange","banana","grape"],(1,2,3)]

for x in a:

for x1 in x:

print(x1,end=' ')

代码4:for-else

a = [["apple","orange","banana","grape"],(1,2,3)]

for x in a:

for x1 in x:

print(x1)

else:

print("fruit is gone")

代码5:将列表里面的遍历到某个数需要跳出循环(下面这段代码当它等于2的时候,遇到break将跳出,不会执行后面的print语句,所以只能打印出1)

a = [1,2,3]

for x in a:

if x==2:

break

print(x)

代码6:将列表当中的1,2,3只打印出1,3即可(continue的作用)

a = [1,2,3]

for x in a:

if x==2:

continue

print(x)

break和continue的区别

1.break

用break语句可以使流程跳出switch语句体,也可以用break语句在循环结构终止本层循环体,从而提前结束本层循环。

使用说明:

(1)只能在循环体内和switch语句体内使用break;

(2)当break出现在循环体中的switch语句体内时,起作用只是跳出该switch语句体,并不能终止循环体的执行。若想强行终止循环体的执行,可以在循环体中,但并不在switch语句中设置break语句,满足某种条件则跳出本层循环体。

2.continue

continue语句的作用是跳过本次循环体中余下尚未执行的语句,立即进行下一次的循环条件判定,可以理解为仅结束本次循环。

注意:continue语句并没有使整个循环终止。

在if-else程序中遇到break
代码7:结果则不会执行else里面的语句

a = [1,2,3]

for x in a:

if x==2:

break

print(x)

else:

print("EOF")

在if-else语句遇到continue
代码8:结果仍然会执行else里面的语句

a = [1,2,3]

for x in a:

if x==2:

continue

print(x)

else:

print("EOF")

思考代码

代码9:为什么会出现那样的运行结果,已经break了,为什么还能执行1,2,3和EOF呢?

博主认为第一次执行for循环的时候x是a的第一组元素遍历也就是说遍历的是列表里的元素,当遇到orange的时候,第一组结束以后的循环只打印出Apple,当结束外层第一个循环的时候,接着则会遍历第2组,即遍历元组里面的元素,与break无关

a  [["apple","orange","banana","grape"],(1,2,3)]

for x in a:

for x1 in x:

if x1=="orange":

break

print(x1)

else:

print("EOF")

 上述代码中不会出现任何结果:外层循环已经终止

发布了98 篇原创文章 · 获赞 34 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_42133768/article/details/87684703