程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别


一、知识导图


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_02


二、程序的基本结构

1、程序的流程图

  • I、程序流程图用一系列图形、流程线和文字说明描述程序的基本操作和控制流程,它是程序分析和过程描述的最基本方式。
  • II、流程图的基本元素包括7种


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_03


  • III、流程图的含义
  • 起止框:表示程序逻辑的开始或结束;
  • 判断框:表示一个判断条件,并根据判断结果选择不同的执行路径;
  • 处理框:表示一组处理过程,对应于顺序执行的程序逻辑;
  • 输入输出框:表示程序中的数据输入或结果输出;
  • 注释框:表示程序的注释;
  • 流向线:表示程序的控制流,以带箭头直线或曲线表达程 序的执行路径;
  • 连接点:表示多个流程图的连接方式,常用于将多个较小 流程图组织成较大流程图


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_04


2、程序的基本结构

  • I、程序由三种基本结构组成:顺序结构、分支结 构和循环结构。任何程序都由这三种基本结构组合而成。这些基本结构都有一个入口和一个出口。

顺序结构是程序按照线性顺序依次执行的一种运行方式,其中语句块S1和语句块S2表示一个或一组 顺序执行的语句


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_05


分支结构是程序根据条件判断结果而选择不同向前 执行路径的一种运行方式,基础的分支结构是二分支结构。由二分支结构会组合形成多分支结构。


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_06


循环结构是程序根据条件判断结果向后反复执行的一种运行方式,根据循环体触发条件不同, 包括条件循环和遍历循环结构。


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_07


  • II、在分支结构原理的基础上,Python增加了异常 处理,使用try-except保留字;异常处理以程序异常为判断条件,根据一段代 码执行的正确性进行程序逻辑选择。异常处理 是分支结构的一种扩展。
  • III、在循环结构原理的基础上,Python提供两个循 环控制符break和continue,对循环的执行过程 进行控制。break控制符用来结束当前循环, continue控制符用来结束当前循环的当次循环 过程。


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_08


三、程序的分支结构

1、单分支结构: if语句

  • Python的单分支结构使用if保留字对条件进行判断,使用方式如下:


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_09


是一个或多个条件,多个条件间采用and或or进 行逻辑组合。and表示多个条件“与”的关系,or表示 多个条件“或”的关系


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_10


2、 二分支结构: if-else语句

  • I、Python的二分支结构使用if-else保留字对条件进行判断,语法格式如下:


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_11


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_12


  • II、二分支结构还有一种更简洁的表达方式,适合< 语句块1>和都只包含简单表达式的情 况,语法格式如下:


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_13


# 判断用户输入数字的某个属性s = eval(input("请输入一个整数:"))token = '' if s % 3 == 0 and s % 5 == 0 else '不'print("输入的数{}能同时被3和5整除".format(token))

3、 多分支结构: if-elif-else语句

  • I、Python的if-elif-else描述多分支结构,语句格式


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_14


  • II、多分支结构通常用于判断同一个条件或一类条件的 多个执行路径。要注意,Python会按照多分支结构 的代码顺序依次评估判断条件,寻找并执行第一个 结果为True条件对应的语句块,当前语句块执行后 跳过整个if-elif-else结构。
  • III、获取用户输入的一个百分制成绩,转换成五分制,给出对应的A、B、C、D、E等级。将百分制成绩转换为五分制成绩


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_15


4、 判断条件及组合

  • I、分支结构中的判断条件可以使用任何能够产生 True或False的语句或函数。形成判断条件最常见的方式是采用关系操作符


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_16


>>>4 < 5True>>>"Python" > "python" False
  • II、Python语言中,任何非零的数值、非空的数据类型都 等价于True,0或空类型等价于False,可以直接用作判 断条件。
>>>0 == FalseTrue>>>"" == True False
  • III、Python语言使用保留字not、and和or对条件进行逻辑 运算或组合保留字not表示单个条件的“否”关系,and表示多个 条件之间的“与”关系,保留字or表示多个条件之间 的“或”关系。
>>>not TrueFalse>>>a = 80>>>( a > 100) or ( a > 50 and a < 90)True

四、程序的循环结构


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_17


1、程序的循环结构

  • Python语言的循环结构包括两种: 遍历循环 和 无限循环。
  • I、遍历循环:使用保留字for依次提取遍历结构各元素进行处理
  • II、无限循环:使用保留字while根据判断条件执行程序

2、遍历循环:for

  • I、遍历循环可以理解为从遍历结构中逐一提取元素,放在循环变量中,对于每个所提取的元素执行一次语句块。for语句的循环执行次数是根据遍历结构中元素个 数确定的。


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_18


  • II、遍历结构可以是字符串、文件、range()函数或组合数据类型等。
  • III、对于字符串,可以逐一遍历字符串的每个字符,基本 使用方式如下:


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_19


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_20


  • IV、使用range()函数,可以指定语句块的循环次数,基本 使用方式如下:


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_21


>>>for i in range(5): print(i)01234
  • V、遍历循环还有一种扩展模式,使用方法如下:


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_22


当for循环正常执行之后,程序会继续执行else语句 中内容。else语句只在循环正常执行之后才执行并结束,因此,可以在中放置判断循环执行情 况的语句。


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_23


3、 无限循环: while

  • I、Python通过保留字while实现无限循环


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_24


  • II、当程序执行到while语句时,判断条件如果为True, 执行循环体语句,语句结束后返回再次判断while语 句的条件;当条件为False时,循环终止,执行与 while同级别缩进的后续语句。


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_25


  • III、无限循环也有一种使用保留字else的扩展模式,使用方法如下:


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_26


在这种扩展模式中,当while循环正常执行之后,程序会继续执行else语句中内容。else语句只在循环正常执行后才执行,因此,可以在语句块2中放置判断循环执行情况的语句


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_27


4、 循环控制: break和continue

  • I、循环结构有两个辅助循环控制的保留字:break和 continue。break用来跳出最内层for或while循环,脱 离该循环后程序从循环后代码继续执行。


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_28


  • II、如果有2层或多层循环,break退出最内层循环。
  • III、continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_29


  • IV、continue语句和break语句的区别是:continue语句只 结束本次循环,不终止整个循环的执行,而break具备 结束循环的能力。

五、程序的异常处理


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_30


1、 程序的异常处理

  • I、Python程序一般对输入有一定要求,但当实际输入不 满足程序要求时,可能会产生程序的运行错误。


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_31


由于使用了eval()函数,如果用户输入不是一 个数字则可能报错。这类由于输入与预期不匹 配造成的错误有很多种可能,不能逐一列出可 能性进行判断。为了保证程序运行的稳定性, 这类运行错误应该被程序捕获并合理控制。

  • II、Python语言使用保留字try和except进行异常处理,基本的语法格式如下:


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_32


语句块1是正常执行的程序内容,当执行这个语句块发 生异常时,则执行except保留字后面的语句块2。


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_33


除了输入之外,异常处理还可以处理程序执行中的运行异常。


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_34


六、实例解析--猜数字游戏


程序结构和程序架构的区别 程序结构框图_程序结构和程序架构的区别_35


编写一个“猜数字游戏”的程序,在1到1000 之间随机产生一个数,然后请用户循环猜测这 个数字,对于每个答案只回答“猜大了”或 “猜小了”,直到猜测准确为止,输出用户的 猜测次数。


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_36


>>上一篇《Python二级(05)——基本数据类型》

>>下一篇《Python二级(07)——函数和代码复用》


程序结构和程序架构的区别 程序结构框图_python 代码变流程图_37