python--简析程序控制流程

Python程序中语句执行的顺序包括3种基本控制结构:顺序结构、选择结构、循环结构。

1、顺序结构

     程序中语句执行的基本顺序按各语句出现位置的先后次序执行,称为顺序结构,参见下图。先执行语句块1,再执行语句块2,最后执行语句块3。三者是顺序执行关系。

   

2、选择结构

      选择结构可以根据条件来控制代码的执行分支,选择结构也叫分支结构。Python使用if语句来实现分支结构。

      分支结构包含多种形式:单分支、双分支和多分支,流程图如下:

     

   2.1、单分支结构

            if语句单分支结构的语法如下所示:

               if(条件表达式):

                   语句/语句块

           当条件表达式的值为真(True)时,执行if后的语句,否则不做任何操作,控制将转到if语句的结束点。

num1 = int(input("Please input a number:"))
num2 = int(input("Please input a number:"))
print(str.format("输入值:{0},{1}", num1, num2))
if(num1 < num2):
    t = num1
    num1 = num2
    num2 = t
print(str.format("降序值:{0},{1}", num1, num2))

 2.2、双分支结构

         if语句双分支语句结构的语法如下:

           if(条件表达式):
              语句/语句块1

          else:

              语句/语句块2

       当条件表达式的值为真(True)时,执行if后的语句1,否则执行else后的语句2

num = int(input("Please input a number:"))
if num >= 0:
    print()
    if num % 2 == 0:
        print("{}是偶数".format(num))
    else:
        print("{}是奇数".format(num))
else:
    print("请输入一个非负数")

2.3、多分支结构

        if语句多分支结构的语法如下  :     

         if(条件表达式):
              语句/语句块1

        elif(条件表达式2):

             语句/语句块2

       ...

       elif(条件表达式n):

             语句/语句块n

      else:

            语句/语句块n+1

   该语句的作用是根据不同条件表达式的值确定执行哪个语句

mark = int(input("请输入分数:"))
if(mark >= 90):
    grade = '优'
    print(grade)
elif(mark >= 80):
    grade = '良'
    print(grade)
elif(mark >= 70):
    grade = '中'
    print(grade)
elif(mark >= 60):
    grade = '及格'
    print(grade)
else:
    grade = '不及格'
    print(grade)

      2.4、if语句的嵌套

              在if语句中又包含一个或者多个if语句的结构称为if语句的嵌套。一般形式如下:

       

3、循环结构

      循环结构用来重复执行一条或多条语句。使用循环结构,可以减少源程序重复书写的工作量。许多算法需要使用到循环结构。Python 使用for语句和while语句来实现循环结构。

      3.1、for循环

              for语句用于遍历可迭代对象集合中的元素,并对集合中的每个元素执行一次相关的嵌人语句。当集合中的所有元素完成迭代后,控制传递给for 之后的下一个语句。for 语句的格式如下:

              for 变量 in 对象集合:

                   循环体语句/语句块         

for i in (1, 2, 3):
    print(i)

     3.2、range 对象

            Python 3内置对象range是一个迭代器对象,迭代时产生指定范围的数字序列。其格式为:range( start , stop[ ,step])。range返回的数值系列从start开始,到stop结束(不包含stop)。如果指定了可选的步         长step,则序列按步长增长。例如:

    3.3、while循环

           与for循环一样,while也是一个预测试的循环,但是while在循环开始前,并不知道重复执行循环语句序列的次数。while 语句按不同条件执行循环语句(块)零次或多次。while循环语句的格式为: 

           while(条件表达式):

                循环体语句/语句块

     

count = 0
while (count < 9):
   print("The count is:", count)
   count = count + 1
 
print "Good bye!"

3.4、break

        break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。 break语句用在while和for循环中。

        如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。

       

num = int(input("Please enter a number: "))
flag = True
if num > 1:
    for i in range(2, num//2 + 1):
        if (num % i) == 0:
            flag = False
            break
    if flag:
        print(num, "是质数")
    else:
        print(num, "不是质数")
else:
    print(num, "不是质数")

3.5、continue

        python continue 语句跳出本次循环,而break跳出整个循环。continue 语句用来告诉python跳过当前循环的剩余语句,然后继续进行下一轮循环。

        continue语句用在while和for循环中。

for i in range(1, 6):
    if i == 3:
        continue
    print("i=", i)

猜你喜欢

转载自blog.csdn.net/Light20000309/article/details/112740805