当前位置:   article > 正文

Python从入门到项目实战————程序逻辑结构_if else 流程图

if else 流程图

系列文章目录

在这里插入图片描述



前言

前面我们学习了Python中如何输出,以及如何输入等级除知识,而在编程中,程序的逻辑结构也是一个非常重要的知识点,熟练掌握了程序的逻辑结构才能更好的开发。


`

一、程序逻辑

程序逻辑是编程语言中重要的部分,一般来说程序的逻辑结构有三种:顺序结构,分支结构,循环结构。这三种结构有一个共同的特点,那就是他们的入口就只有一个,出口也只有一个。下面用流程图来简单介绍一下他们的流程:

顺序结构

在这里插入图片描述

分支结构

在这里插入图片描述

循环结构

在这里插入图片描述

分支结构

分支结构主要是根据布尔表达式的真值情况来执行不同的语句,然后从一个出口出去。在Python中可以用关键字if。else,elif来实现分支处理。

语句描述
if 布尔表达式:当布尔表达式为真的时候执行
if 布尔表达式:else :当表达式为真的时候执行if语句后面的语句,否则执行else后面的语句
if 布尔表达式:elif 布尔表达式:else:当if语句和elif语句后面的布尔表达式为真的时候就执行与之对应的语句,否则执行else后面的语句
if语句的流程图

在这里插入图片描述
示例:用if判断语句进行条件判断

# coding:UTF-8
age=20
if 18<=age<+22:
    print("我是一个大学生,拥有无穷的拼搏精神与探索精神")   #语句为True,执行。
print("开始为自己的梦想努力奋斗")

程序运行结果:
我是一个大学生,拥有无穷的拼搏精神与探索精神
开始为自己的梦想努力奋斗
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
if,else语句的流程图

在这里插入图片描述
代码示例:

# coding:UTF-8
money=100
ice_price=120
if money>=90:
    print("骄傲的走到商店的冰柜面前拿起一个冰淇凌,然后说不用找了")
    if ice_price>money:
        print("老板将你踢出门")
else:
    print("悄悄的回家,然后伸手向父母要钱卖冰激凌")
print("冰淇凌价格太贵了,还是雪莲才是完美的")

运行结果:
骄傲的走到商店的冰柜面前拿起一个冰淇凌,然后说不用找了
老板将你踢出门
冰淇凌价格太贵了,还是雪莲才是完美的
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
if,elif,else语句的流程图

在这里插入图片描述
代码示例:

# coding:UTF-8
score=90
if 90<=score<=100:
    print("该学生是优等生")
elif 70<=score<=89:
    print("该学生是良好生")
elif 60<=score<=69:
    print("该学生需要被关注,有很大提高空间")
else:
    print("该学生没有机及格,还需要努力")
程序运行结果:
该学生是优等生

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
断言

我们知道Python语言是由c语言开发而来,所以也完美的集成了c语言中的一些操作,比如用assert断言,很多人都不知道他的作用,或者说不太喜欢用它,但是为了程序的完整性,用断言不仅仅能保证程序的健壮性,还可以提示逻辑错误,为我们更改代码提供了便利:

score=100
age=18
assert age>score  #当布尔表达式为假的时候会在这里终端,然后提示‘AssertionError’信息。 
print("%d" % (age))

  • 1
  • 2
  • 3
  • 4
  • 5

循环结构

while循环结构

和c语言中一样,Python也继承了while循环,但是多了一个while else循环语句
在这里插入图片描述

while循环的流程图

在这里插入图片描述

while…else…语句的流程图

在这里插入图片描述
通过上面的流程图的介绍,我们可以发现,无论是何种循环,他都必须有判断条件的修改,以达到跳出循环,避免死循环是学习中的重要部分。
下面通过一个小例子来详细的介绍如何使用while循环:
实例:实现1到100的累加和

# coding:UTF-8
sum=0
num=1
while num<=100:
    sum+=num;    #循环体
    num+=1       #修改循环条件  
print("a到100所有数字的和为:%d" % (sum))

while...else...语句:
# coding:UTF-8
sum=0
num=1
while num<=100:
      sum+=num
      num+=1
else:
print("1到100所有数字的和为:%d" % (sum))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

看到这里很多人可能会绝的用while…else…不如用while语句简单,但是,while…else…语句在else后面会有以个独立的语句块,也就是说我们可以将语句和其他语句分隔开。这就是该语句的最大特点。
实例:输出一个斐波那契数列(1000以内)

# coding:UTF-8
num_a=0
num_b=1
while num_b<1000:
    print(num_b,end=",")
    num_a,num_b=num_b,num_a+num_b      #数据计算
输出结果:
1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
for循环结构

在这里插入图片描述

for循环流程图

在这里插入图片描述

# coding:UTF-8
for num in {1,2,3}:
print(num,end=",")
  • 1
  • 2
  • 3

如果想要使用佛for循环,往往要设置一个数据数除的范围,也就是序列,和上面一样,但是如果对于很长的序列,那我们就用range(开始值,最大值,步长)来实现。

# coding:UTF-8
sum=0
for num in range(101):       #最大生成的数字为101
    sum+=num
print(sum)
程序是用来实现1100的数字的累加
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

循环结构的实例还有很多,就不一一举例了,可以自己多动手去实现。

循环语句中的跳转语句

(1).continue语句,学过c语言的同学都知道,continue是作为循环语句中的跳转语句,一般与分支结构语句结合,当满足条件时,跳过此次循环,继续下一次的循环。
(2).break语句,break语句的格式和continue相似,但是它的用法和continue不太一样,如果满足条件,直接终止该循环语句的循环,不会再循环。
实例:利用循环语句实现对字符串大写改为小写

num_all="" #将num_all置为空串
infors="I LIKE YOU,so do You Want Married with mE"
for item in infors:
    if 65<=ord(item)<=90:
        num=chr(ord(item)+32)
        num_all=num_all+num
    else:
        num_all=num_all+item
print(num_all)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

实例:利用跳转语句实现求对1到100中所有奇数的和

# coding:UTF-8
sum=0
for num in range(1,100,1):
    if num%2==0:
        continue
    else:
        sum+=num
print("1 到 100中所有的奇数的和为:"+str(sum))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
循环嵌套

循环结构是可以嵌套使用的,一个循环结构可以有若干个子循环结构,以此来实现更加复杂的程序结构。
例如:利用循环结构实现打印9*9乘法表:

# coding:UTF-8
for x in range(1,10):
    for y in range(1,x+1):
        print("%d*%d=%d" % (y,x,x*y),end="\t")
    print()
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

本章小结

1.if语句可根据判断结果来决定程序的流程
2.分支结构包括if,if…else…,if …elif…else语句,不同的语句的选择情况不同,就i像道路一样,有的是三条道路的,有的是十字路口,根据要求去选择就好。
3.如果需要重复的执行某种功能的时候,就可以用fo或者while语句。
4.break,和continue跳转语句,往往和分支结构语句结合,在循环中去特定的实现某种功能。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/579769
推荐阅读
相关标签
  

闽ICP备14008679号