Python 教程之控制流(3)Python 中的循环和控制语句(继续、中断和通过)

243 阅读3分钟

我报名参加金石计划1期挑战——瓜分10万奖池,这是我的第23篇文章,点击查看活动详情

Python 编程语言提供以下类型的循环来处理循环要求。

While 循环
句法 :

while expression:
    statement(s)

在 Python 中,在编程构造之后缩进相同数量的字符空格的所有语句都被认为是单个代码块的一部分。Python 使用缩进作为分组语句的方法。

# 打印 Hello Code 3 次
count = 0
while (count < 3):	
	count = count+1
	print("Hello Code")

输出:

Hello Code
Hello Code
Hello Code

不建议在 python 中对迭代器使用 while 循环。

 

For in 循环
在Python 中,没有C 风格的for 循环,即for (i=0; i<n; i++)。有一个“for in”循环,类似于其他语言中的 for each 循环。

语法:

for iterator_var in sequence: 
    statements(s)

它可用于迭代迭代器和范围。

# 遍历列表
print("List Iteration")
l = ["geeks", "for", "geeks"]
for i in l:
	print(i)
	
# 迭代一个元组(不可变)
print("\nTuple Iteration")
t = ("geeks", "for", "geeks")
for i in t:
	print(i)
	
# 遍历字符串
print("\nString Iteration")	
s = "Geeks"
for i in s :
	print(i)
	
# 遍历字典
print("\nDictionary Iteration")
d = dict()
d['xyz'] = 123
d['abc'] = 345
for i in d :
	print("%s %d" %(i, d[i]))

输出:

List Iteration
geeks
for
geeks

Tuple Iteration
geeks
for
geeks

String Iteration
G
e
e
k
s

Dictionary Iteration
xyz  123
abc  345

我们可以为用户定义的迭代器使用 for in 循环。

 

嵌套循环
Python 编程语言允许在另一个循环中使用一个循环。以下部分显示了一些示例来说明该概念。
句法:

for iterator_var in sequence: 
    for iterator_var in sequence: 
        statements(s) 
        statements(s)

Python 编程语言中嵌套的 while 循环语句的语法如下:

while 表达式:
    while 表达式:
        语句
        语句

关于循环嵌套的最后一点是,我们可以将任何类型的循环放在任何其他类型的循环中。例如 for 循环可以在 while 循环内,反之亦然。

from __future__ import print_function
for i in range(1, 5):
	for j in range(i):
		print(i, end=' ')
	print()

输出:

1 
2 2 
3 3 3 
4 4 4 4

循环控制语句
循环控制语句改变其正常顺序的执行。当执行离开一个范围时,在该范围内创建的所有自动对象都将被销毁。Python 支持以下控制语句。

Continue 语句
它将控制返回到循环的开头。

# 打印除 'e' 和 's' 之外的所有字母
for letter in 'geeksforgeeks':
	if letter == 'e' or letter == 's':
		continue
	print 'Current Letter :', letter
	var = 10

输出:

Current Letter : g
Current Letter : k
Current Letter : f
Current Letter : o
Current Letter : r
Current Letter : g
Current Letter : k

Break 语句
它将控制带出循环

for letter in 'geeksforgeeks':

	# 一旦看到'e'或's'就打破循环
	if letter == 'e' or letter == 's':
		break

print 'Current Letter :', letter

输出:

Current Letter : e

Pass 语句
我们使用 pass 语句来编写空循环。Pass 也用于空的控制语句、函数和类。

# 一个空循环
for letter in 'geeksforgeeks':
	pass
print 'Last Letter :', letter

输出:

Last Letter : s

练习:
如何使用 while 和 for in 循环以相反的顺序(从最后一项到第一项)打印列表。