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

1. While循环

在python中,while循环用于重复执行语句块,直到满足给定条件为止。 并且当条件变为假时,将立即执行程序中循环之后的行。

语法

while expression:    statement(s)

所有缩进相同数量字符空间的语句都被视为单个代码块的一部分。Python使用缩进作为其对语句进行分组的方法。

示例:

# Python program to illustrate # while loop count = 0while (count < 3):         count = count + 1    print("Hello Geek")

输出:

Hello GeekHello GeekHello Geek

1)在while循环中使用else语句:如上所述,while循环执行该块,直到满足条件为止。当条件变为假时,循环后立即执行该语句。

else子句仅在while条件变为false时执行。如果您跳出循环,或者引发了异常,则不会执行。

if else像这样

if condition:     # execute these statements else:     # execute these statements

while循环类似

while condition:      # execute these statements else:      # execute these statements
#Python program to illustrate # combining else with while count = 0while (count < 3):         count = count + 1    print("Hello Geek") else:     print("In Else Block")

输出:

Hello GeekHello GeekHello GeekIn Else Block

2)单条语句while块:与if块一样,如果while块由一条语句组成,我们可以在一行中声明整个循环,如下所示:

# Python program to illustrate # Single statement while block count = 0while (count == 0): print("Hello Geek")

注意:建议不要使用这种类型的循环,因为它是一个永无止境的无限循环,其中条件始终为true,并且您必须强制终止编译器。

2. for in循环

for循环用于顺序遍历。例如:遍历列表,字符串或数组等。在Python中,没有C样式的循环,即for(i = 0; i

for iterator_var in sequence:    statements(s)

它可以用于在迭代器和范围上迭代。

# Python program to illustrate # Iterating over a list print("List Iteration") l = ["geeks", "for", "geeks"] for i in l:     print(i)        # Iterating over a tuple (immutable) print("Tuple Iteration") t = ("geeks", "for", "geeks") for i in t:     print(i)        # Iterating over a String print("String Iteration")     s = "Geeks"for i in s :     print(i)        # Iterating over dictionary print("Dictionary Iteration")    d = dict()  d['xyz'] = 123d['abc'] = 345for i in d :     print("%s  %d" %(i, d[i]))

输出:

List IterationgeeksforgeeksTuple IterationgeeksforgeeksString IterationGeeksDictionary Iterationxyz  123abc  345

3. 按序列索引进行迭代:我们还可以使用序列中元素的索引进行迭代。关键思想是首先计算列表的长度,然后在此长度范围内迭代序列。

请参见以下示例:

# Python program to illustrate # Iterating by index   list = ["geeks", "for", "geeks"] for index in range(len(list)):     print list[index]

输出:

geeksforgeeks

4. 使用带有for循环的else语句

我们也可以将while循环中的else语句与for循环结合使用。但是由于for循环中没有终止执行的条件,因此else块将在for块完成执行后立即执行。

以下示例说明了如何执行此操作:

# Python program to illustrate # combining else with for   list = ["geeks", "for", "geeks"] for index in range(len(list)):     print list[index] else:     print "Inside Else Block"

输出:

geeksforgeeksInside Else Block

5. 嵌套循环

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

语法:

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

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

while expression:     while expression:          statement(s)         statement(s)

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

# Python program to illustrate  # nested for loops in Python from __future__ import print_function for i in range(1, 5):     for j in range(i):          print(i, end=' ')     print()

输出:

12 23 3 34 4 4 4

6. 循环控制语句

循环控制语句从其正常顺序更改执行。当执行离开作用域时,在该作用域中创建的所有自动对象都将被销毁。Python支持以下控制语句。

1)Continue语句:将控件返回到循环的开头。

# Prints all letters except 'e' and 's' for letter in 'geeksforgeeks':      if letter == 'e' or letter == 's':          continue    print 'Current Letter :', letter     var = 10

输出:

Current Letter : gCurrent Letter : kCurrent Letter : fCurrent Letter : oCurrent Letter : rCurrent Letter : gCurrent Letter : k

2)Break语句:将控制带出循环。

for letter in 'geeksforgeeks':        # break the loop as soon it sees 'e'      # or 's'     if letter == 'e' or letter == 's':          break  print 'Current Letter :', letter

输出:

Current Letter : e

3)Pass语句:我们使用pass语句编写空循环。Pass还用于空的控制语句,函数和类。

# An empty loop for letter in 'geeksforgeeks':     passprint 'Last Letter :', letter

输出:

Last Letter : s