Python中的循环

处理冗余代码和重复命令对任何程序员来说都可能是一场噩梦。Python利用循环、控制和条件语句来克服这一障碍。本文将帮助您理解Python中的循环以及围绕循环的所有术语。

Python中的循环是什么?

Python中的循环允许我们多次执行一组语句。让我们举一个例子来理解为什么在Python中使用循环。 假设您是一名软件开发人员,需要为您办公室的所有员工提供软件模块。因此,您必须分别打印每个员工的工资单详细信息。打印所有员工的详细信息将是一项令人厌烦的任务,相反,您可以使用逻辑来计算详细信息,并继续重复相同的逻辑语句。这将节省您的时间,并使您的代码高效。

下图是循环的流程图:执行开始并检查条件是True还是False。A条件可以是我们想要在程序中测试的任何逻辑。如果它为true,它将执行循环体,如果为false,它将退出循环。


条件语句

Python中的条件语句支持数学中的常见逻辑条件。

  • 等于:a==b
  • 不等于:a!=b
  • 少于:a<b
  • 小于或等于:a<=b
  • 大于:a>b
  • 大于或等于:a>=b

‘if’语句

一个if语句是使用‘if’关键字编写的,语法是关键字‘if’后跟条件。

下面是if语句的流程图:如您所见,执行遇到if条件并相应地采取行动。如果为true,则执行体,如果为false,则退出theif语句。

a = 10
b = 20
if a < b :
print(" b is greater")

上面的代码片段说明了如何在if语句中使用条件的基本示例。 当它到达if语句时,它检查b的值是否大于a 。如果b大于a,则打印“b更大些”。现在,如果条件为false,它将退出if语句并执行下一条语句。为了打印下一条语句,我们可以为希望执行的替代结果添加关键字‘Else’。为了更好地理解,让我们转到另一个陈述。

‘Else’语句

其他关键字捕获任何未被前置条件捕获的内容。当If语句的条件为false时,执行将转移到Else语句。

让我们看看下面其他语句的流程图:正如你所看到的,当语句为假时,执行转移到其他语句的主体。让我们用一个例子来理解这一点。

a = 10
b = 20
if a < b :
    print(" b is greater")
else:
    print(" a is greater")

第一个条件不为真,因此我们将转到另一个语句中的下一个语句,并打印“b更大”。 如果我们有更多的条件需要测试,我们也可以使用elif语法。

‘elif’语句

elif语法在外行术语中的意思是“尝试一下这个条件”。有条件的可以通过使用elif关键字来使用。

让我们看一下下面的代码:“当if语句不为真时,执行将转移到elif语句并检查它是否为真。最后,如果安黛丽芙是假的,那么其他的陈述也是假的。 由于a!=b,这里将打印“b更大”。

a = 10
b = 20
if a < b :
    print(" b is greater")
elif a == b :
    print(" a is equal to b ")
else:
    print(" a is greater")

注意:python依赖于缩进,其他编程语言使用花括号表示循环。

什么是‘for’循环和‘While’循环

For循环用于执行语句,对序列中的每一项执行一次。序列可以是列表、字典、集合或字符串。 For循环有两个部分, 表达式指定了迭代语句,然后是主体,每个迭代执行一次。 与while 循环不同,我们已经指定了迭代必须执行的次数。for循环语法需要三个字段,即布尔条件、计数变量的初始值和counting变量的增量。

days = ["sun" , "mon" , "tue" , "wed", "thu", "fri", "sat"]
for x in days:
    print(x)

请看该示例以更好地理解这一点:这里我们正在迭代列表。要迭代代码指定的次数,我们可以使用range()函数。

范围函数

范围函数需要特定的数字序列。它从0开始,然后该值递增1,直到达到指定的数字。

例如:它将从0-2打印,输出将如下所示注意:范围(3)不是指0-3的值,而是0-2的值。下面是使用条件语句的另一个示例:

for x in range(3)
    print(x)
0
1
2
num = int(input("number"))
factorial = 1
if num < 0 :
    print(" invalid input")
elif num == 0:
    print(" factorial is 1")
else:
    for i in range( 1 , num+1):
    factorial = factorial * i   
    print(factorial)

‘While’循环

只要条件为真,‘While’循环就执行这组语句。 它由一个条件挡路和带语句集的主体组成,它会一直执行该语句,直到条件变为FALSE。不能保证看到循环将持续迭代多长时间。

下面是WHILE循环的流程图:为了理解这一点,让我们看一下下面的示例。

While循环需要准备好相关变量,这里我们需要一个索引变量,它可以是任何值。

i = 1
while i < 6 :
    print(i)
    i += 1

OUTPUT:它将打印1 2 3 4 5执行将继续,直到值小雨6。

num = int(input("enter number"))
while num > 0:
    if num < 13:
        print("the number is too large")
        break
    elif num < 13:
        print("number too small")
        break
        elif num == 13:
            print("exit: congratulations")
            break


让我们考虑另一个例子:注意:记得迭代i,否则循环将永远继续。如果这里没有CONTROL语句,循环将永远继续。尝试删除BREAK语句并再次运行。在某些情况下,我们可能需要控制执行流以支持一些条件,所以让我们了解一下Python中的循环控制语句。

循环控制语句

为了控制循环的流,或者根据一些指定的条件改变执行,我们使用下面讨论的循环控制语句。控制语句用于根据条件更改执行。 在Python中,我们有三个控制语句:

中断

Break语句用于终止包含它的循环的执行。只要循环遇到Break语句,循环就会终止,并且执行转移到循环后面的下一条语句。

如您所见,当Break返回true时,执行转移到循环下面的语句。

for val in "string" :
    if val == "i":
        break
        print(val)
        print("the end")
​
s
t
r
The end

继续

continue用于跳过当前迭代循环中代码的循环。它不会像BREAK语句那样终止循环,而是继续进行剩余的迭代。

当遇到CONTINUE时,它仅跳过该循环的剩余循环。

for val in "string" :
if val == "i":
    continue
    print(val)
    print("the end")
Output:
s
t
r
n
g
the end

例如:它将跳过输出中的字符串“i”,并且仍将执行迭代的睡觉。将打印字符串中除“i”之外的所有字母。

PASS

pass语法为空操作。这基本上意味着语句在语法上是必需的,但是您不希望执行任何命令或代码。

执行不会受到影响,一旦遇到“a”字符串,它只会打印pass块。执行将从“a”开始,然后执行剩余迭代的睡觉。

for val in "please":
    if val == "a":
        pass
        print("pass block")
        print(val)
p
l
e
pass block
a
s
e

‘While’使用BREAK语句循环

i = 1
while i < 6 :
    print(i)
if i == 3 :
    break
    i += 1
​

使用CONTINUE语句

i = 1
while i < 6:
print(i)
if i == 3 :
continue
i += 1

嵌套循环

Python允许我们在一个循环中使用另一个循环,下面是几个示例

嵌套for循环

for i in range(1 , 6):
for j in range(i):
print( i , end="")
print()
1
2 2
3 3 3
4 4 4 4

嵌套的‘While’循环

while expression:
while expression:
语法(s)
语法(s)

发布于 2021-07-10 14:30