likes
comments
collection
share

Python 教程之控制流(1)python中的循环

作者站长头像
站长
· 阅读数 92

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

Python 编程语言提供以下类型的循环来处理循环要求。Python 提供了三种执行循环的方法。虽然所有方法都提供了类似的基本功能,但它们的语法和条件检查时间不同。

  1. While循环:
  2. 在python中,while循环用于重复执行一个语句块,直到满足给定条件。并且当条件变为假时,程序中的循环之后的行将被执行。

语法

while expression:
    statement(s)

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

# Python程序来说明while循环
count = 0
while (count < 3):
	count = count + 1
	print("Hello Geek")

输出:

Hello Geek
Hello Geek
Hello Geek
  • 将 else 语句与 while 循环一起使用: 如上所述,while 循环执行块,直到满足条件。当条件变为假时,立即执行循环之后的语句。  else 子句仅在您的 while 条件变为 false 时执行。如果您跳出循环,或者如果引发异常,它将不会被执行。  如果还有这样的:
if condition:
	# 执行这些语句
else:
	# 执行这些语句
  • 和这样的while循环是相似的
while condition:
	# 执行这些语句
else:
	# 执行这些语句
# Python 程序来说明 else 与 while 的结合
count = 0
while (count < 3):
	count = count + 1
	print("Hello Geek")
else:
	print("In Else Block")

输出:

Hello Geek
Hello Geek
Hello Geek
In Else Block
  • 单语句 while 块: 就像 if 块一样,如果 while 块由一条语句组成,那么我们可以在一行中声明整个循环,如下所示:
# Python程序说明单语句while块
count = 0
while (count == 0): print("Hello Geek")
  • 注意:建议不要使用这种类型的循环,因为它是一个永无止境的无限循环,其中条件始终为真,您必须强制终止编译器。
  1. for in 循环:  for 循环用于顺序遍历。例如:遍历列表或字符串或数组等。在Python 中,没有C 风格的for 循环,即for (i=0; i<n; i++)。有一个“for in”循环,类似于其他语言中的 for each 循环。让我们学习如何使用 for in 循环进行顺序遍历。

语法:

for iterator_var in sequence: 
    statements(s)

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

# 说明迭代范围 0 到 n-1 的 Python 程序

n = 4
for i in range(0, n):
	print(i)

输出 :

0 
1 
2 
3
# 说明迭代列表的 Python 程序
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]))
	
# 迭代一个集合
print("\nSet Iteration")
set1 = {1,2,3,4,5,6}
for i in set1:
	print(i),

输出:

List Iteration
geeks
for
geeks

Tuple Iteration
geeks
for
geeks

String Iteration
G
e
e
k
s

Dictionary Iteration
xyz  123
abc  345

通过序列索引 迭代:我们也可以使用序列中元素的索引进行迭代。关键思想是首先计算列表的长度并在此长度范围内迭代序列。  请参见以下示例:

# 说明按索引迭代的 Python 程序

list = ["geeks", "for", "geeks"]
for index in range(len(list)):
	print list[index]

输出:

geeks
for
geeks

将 else 语句与 for 循环一起使用: 我们还可以将 else 语句与 for 循环结合起来,就像在 while 循环中一样。但是由于 for 循环中没有条件终止执行,因此 else 块将在 for 块执行完毕后立即执行。  下面的示例说明了如何执行此操作:

# 说明结合 else 和 for 的 Python 程序
list = ["geeks", "for", "geeks"]
for index in range(len(list)):
	print (list[index])
else:
	print ("Inside Else Block")

输出:

geeks
for
geeks
Inside Else Block

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

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

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

# Python 程序来说明 Python 中的嵌套 for 循环
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

输出:

Last Letter : s
转载自:https://juejin.cn/post/7146087350194405390
评论
请登录