在计算机编程中,面向过程的编程中,程序结构分为三类:顺序结构、分支结构、循环结构。
一、顺序结构
顺序结构就是指程序一步一步按照顺序执行程序,顺序结构比较简单。
二、分支结构
分支结构主要就是逻辑判断结构,根据不同的条件选择不同路径去执行程序。
1.单分支结构: 根据判断条件结果而选择不同向前路径的运行方式 if <条件> : <语句块>
2.二分支结构: 根据判断条件结果而选择不同向前路径的运行方式 if <条件> : <语句块1> else : <语句块2>
紧凑形式:适用于简单表达式的二分支结构 <表达式1> if <条件> else <表达式2>
3.多分支结构: if <条件1> : <语句块1> elif <条件2> : <语句块2> …… else : <语句块N>
三、异常处理
1.异常处理 try : <语句块1> except : <语句块2> 异常处理的基本使用 try : <语句块1> except <异常类型> : <语句块2>
try : num = eval(input("请输入一个整数: "))
print(num**2)
except : print("输入不是整数")
示例:
try : num = eval(input("请输入一个整数: "))
print(num**2)
except NameError: print("输入不是整数")
2.异常处理的高级使用
try : <语句块1>
except : <语句块2>
else : <语句块3>
finally : <语句块4>
异常处理的高级使用 - finally对应语句块4一定执行
- else对应语句块3在不发生异常时执行
四、分支结构例子代码:
1 #!/usr/bin/env python3 2 # -*- coding: utf-8 -*- 3 #CalBMIv1.py 4 5 height,weight=eval(input("请输入身高(米)和体重(公斤)[逗号隔开]")) 6 bmi=weight/pow(height,2) 7 who,nat="","" 8 if bmi<18.5: 9 who,nat="偏瘦","偏瘦" 10 elif 18.5<=bmi<24: 11 who,nat="正常","正常" 12 elif 24<=bmi<25: 13 who,nat="正常","偏胖" 14 elif 25<=bmi<28: 15 who,nat="偏胖","肥胖" 16 else: 17 who,nat="肥胖","肥胖" 18 print("BMI指标为:国际‘{0}’,国内'{1}'".format(who,nat))
五、循环结构
循环结构分为遍历循环和无限循环
1.遍历循环:遍历某个结构形成的循环运行方式
- 从遍历结构中逐一提取元素,放在循环变量中 for <循环变量> in <遍历结构> : <语句块>
遍历结构可以数数组,文件,字符,表等可以遍历的对象。
2.无限循环:由条件控制的循环运行方式 - 反复执行语句块,直到条件不满足时结束 while <条件> : <语句块>
六、示例代码:
1 #!/usr/bin/env python3 2 # -*- coding: utf-8 -*- 3 #CalPiV2.py 4 from random import random 5 from time import perf_counter 6 DARTS=1000*1000 7 hits=0.0 8 start=perf_counter() 9 for i in range(1,DARTS+1): 10 x,y=random(),random() 11 dist=pow(x**2+y**2,0.5) 12 if dist<=1.0: 13 hits=hits+1 14 pi=4*(hits/DARTS) 15 print("圆周率的值是:{}".format(pi)) 16 print("运行时间是:{:.5f}s".format(perf_counter()-start))