介绍
在Python中使用 for loops和 while loops可以有效地自动化和重复任务。
但是,有时,外部因素可能会影响程序的运行方式. 当发生这种情况时,您可能希望程序完全退出循环,在继续之前跳过循环的一部分,或者忽略外部因素。
<$>[info] 需要部署一个Python项目并让它快速生动吗?请查看 DigitalOcean App Platform并在几分钟内直接从GitHub部署一个Python项目。
前提条件
如果您没有设置编程环境,您可以参考本地编程环境的安装和安装指南(https://www.digitalocean.com/community/tutorial_series/how-to-install-and-set-up-a-local-programming-environment-for-python-3)或适用于您的操作系统(Ubuntu, CentOS, Debian 等)的编程环境(https://www.digitalocean.com/community/tutorial_collections/how-to-install-python-3-and-set-up-a-programming-environment)。
破声明
在Python中,破
声明为您提供了在触发外部条件时退出循环的机会,您会在循环声明下放置代码块内的破
声明,通常是在有条件的如果
声明之后。
<$>[info]
信息: 要跟进本教程中的示例代码,请在本地系统上运行python3
命令,打开Python交互壳。
让我们看看一个例子,在一个for
循环中使用break
语句:
1number = 0
2
3for number in range(10):
4 if number == 5:
5 break # break here
6
7 print('Number is ' + str(number))
8
9print('Out of loop')
在这个小程序中,变量数
被初始化为0,然后一个for
陈述构建循环,只要变量数
小于10。
在for
循环中,有一个if
陈述,表示如果变量数
等同于整数5,那么循环将被打破。
在循环中还有一种print()
语句,它会在for
循环的每一次迭代中执行,直到循环破裂,因为它是在break
语句之后。
要知道我们什么时候走出循环,我们已经在for
循环之外包含了最终的print()
陈述。
当我们运行此代码时,我们的输出将如下:
1[secondary_label Output]
2Number is 0
3Number is 1
4Number is 2
5Number is 3
6Number is 4
7Out of loop
这表明,一旦整数数
被评估为相当于5,循环就会被打破,因为该程序被告知在断
声中这样做。
打破
声明会导致一个程序从循环中打破。
继续声明
该继续
语句为您提供了跳过循环中触发外部条件的部分的选项,但继续完成循环的其余部分,也就是说,循环的当前迭代将被打破,但程序将返回循环的顶部。
继续
声明将在循环声明下方的代码块内,通常是在有条件的如果
声明之后。
使用相同的for
循环程序,如在上面的Break Statement
(#break-statement)部分中,我们将使用一个继续
陈述而不是一个break
陈述:
1number = 0
2
3for number in range(10):
4 if number == 5:
5 continue # continue here
6
7 print('Number is ' + str(number))
8
9print('Out of loop')
使用继续
陈述而不是破
陈述的不同之处在于,当变量数字
被评估为相当于5时,我们的代码将继续运行,尽管出现了中断:
1[secondary_label Output]
2Number is 0
3Number is 1
4Number is 2
5Number is 3
6Number is 4
7Number is 6
8Number is 7
9Number is 8
10Number is 9
11Out of loop
在这里,‘数字是5’在输出中从未发生,但循环在离开循环之前继续打印数字6-10的线条。
您可以使用继续
语句来避免深度嵌入的条件代码,或通过消除您想要拒绝的常见情况来优化循环。
继续
声明导致程序跳过循环中出现的某些因素,然后继续通过循环的其余部分。
通过声明
当触发外部条件时,pass
语句允许您处理条件而不会以任何方式影响循环;除非出现break
或其他语句,否则所有代码将继续读取。
与其他陈述一样,pass
陈述将在循环陈述下方的代码块内,通常是在有条件的if
陈述之后。
使用上面的相同代码块,让我们用pass
代替break
或continue
语句:
1number = 0
2
3for number in range(10):
4 if number == 5:
5 pass # pass here
6
7 print('Number is ' + str(number))
8
9print('Out of loop')
如果
条件声明之后发生的通过
声明是告诉程序继续运行循环,忽略变量数
在其一次性中评估为相当于5的事实。
我们将运行程序并考虑输出:
1[secondary_label Output]
2Number is 0
3Number is 1
4Number is 2
5Number is 3
6Number is 4
7Number is 5
8Number is 6
9Number is 7
10Number is 8
11Number is 9
12Out of loop
通过在这个程序中使用pass
声明,我们注意到该程序的运行完全如同在程序中没有任何条件声明一样。
通过
语句可以创建最小的类,或者在开发新代码时发挥作用,并在弄清楚细节之前在算法层面上思考。
结论
Python中的打破
、继续
和通过
语句将允许您在代码中更有效地使用为
循环和而
循环。
要更多地使用破
和通过
声明,您可以遵循我们的项目教程如何使用Python 3和Tweepy图书馆创建Twitterbot
(https://andsky.com/tech/tutorials/how-to-create-a-twitterbot-with-python-3-and-the-tweepy-library)。