导图社区 Python程序的控制结构
本导图主要介绍了Python中程序的分支结构、循环结构以及random库的使用,导图内容来源于中国大学MOOC—Python语言程序设计(北京理工大学),配合课程使用效果更好。
编辑于2021-07-09 16:49:04本导图为作者备考中级经济师(人力资源)过程中形成的学习笔记,已取得人力资源管理师证。中级经济专业技术资格考试设《经济基础知识》和《专业知识和实务》两个科目,题型均为客观题。《专业知识和实务》为专业科目,分为工商管理、农业经济、财政税收、金融、保险、运输经济、人力资源管理、旅游经济、建筑与房地产经济、知识产权10个专业类别;《经济基础知识》为公共科目,由经济学基础、财政、货币与金融、法律、会计、统计六个部分组成。
本导图为中级经济师考试科目《经济基础知识》的统计部分,主要包括统计与数据科学、描述统计、抽样统计、回归分析、时间序列分析。
本导图为中级经济师考试科目《经济基础知识》的货币与金融部分,主要包括货币供求与货币均衡、中央银行与货币政策、商业银行与金融市场、金融风险与金融监管、对外金融关系与政策。
社区模板帮助中心,点此进入>>
本导图为作者备考中级经济师(人力资源)过程中形成的学习笔记,已取得人力资源管理师证。中级经济专业技术资格考试设《经济基础知识》和《专业知识和实务》两个科目,题型均为客观题。《专业知识和实务》为专业科目,分为工商管理、农业经济、财政税收、金融、保险、运输经济、人力资源管理、旅游经济、建筑与房地产经济、知识产权10个专业类别;《经济基础知识》为公共科目,由经济学基础、财政、货币与金融、法律、会计、统计六个部分组成。
本导图为中级经济师考试科目《经济基础知识》的统计部分,主要包括统计与数据科学、描述统计、抽样统计、回归分析、时间序列分析。
本导图为中级经济师考试科目《经济基础知识》的货币与金融部分,主要包括货币供求与货币均衡、中央银行与货币政策、商业银行与金融市场、金融风险与金融监管、对外金融关系与政策。
程序的控制结构
本导图主要介绍了Python中程序的分支结构、循环结构以及random库的使用,导图内容来源于中国大学MOOC—Python语言程序设计(北京理工大学),配合课程使用效果更好。
程序的分支结构
单分支结构
if 条件: 语句
二分支结构
if 条件: 语句块1 else: 语句块2
多分支结构
if 条件1: 语句块1 elif 条件2: 语句块2 elif 条件3: 语句块3 ............ else: 语句块N
程序的控制结构
顺序结构
分支结构
循环结构
条件判断及组合
条件判断
< <= > >= == !=
条件组合
x and y x or y not x
程序的异常处理
try: 语句块1 except 异常类型: 语句块2 try : num = eval(input("请输入一个整数: ")) print(num**2) except NameError: print("输入不是整数")
BMI分析
多输入
h,w=input() 输入的时候将两个变量用英文“,”隔开
多变量赋值
h,w="","" h,w="正常","正常"
代码
#BMI.py h,w=eval(input("输入身高(米)和体重(千克):")) bmi=w/pow(h,2) print("BMI:{:.2f}".format(bmi)) F,N="","" if bmi<18.5: F,N="偏瘦","偏瘦" elif 18.5<=bmi<24: F,N="正常","正常" elif 24<=bmi<25: F,N="正常","偏胖" elif 25<=bmi<28: F,N="偏胖","偏胖" elif 28<=bmi<=30: F,N="偏胖","肥胖" else: F,N="肥胖","肥胖" print("BMI指标分类为:国际{},国内{}".format(F,N))
程序的循环结构
遍历循环:for...in...
计数循环
for i in range(N): 语句块 for i in range(M,N,K): 语句块
字符串遍历循环
for c in s: 语句块 for c in "Python123": print(c, end=",") 结果:P,y,t,h,o,n,1,2,3,
列表遍历循环
for item in ls: 语句块 ls是一个列表,遍历其每个元素
文件遍历循环
for line in fi: 语句块 fi是一个文件标识符,遍历其每一行
无限循环
while 条件: 语句块
循环控制保留字
break
跳出并结束当前循环
continue
结束当次循环
break VS continue
p p
循环的高级用法
1、for .... in ....: 语句块1 else: 语句块2 2、while .....: 语句块1 else: 语句块2 当没有被break语句退出时,else作为循环完成的奖励 p
random库的使用
采用梅森旋转算法生成伪随机数
基本随机函数
p
seed()
初始化随机数种子,默认为当前系统时间 注:相同的随机数种子产生相同的随机数
random()
生成一个[0.0,1.0)之间的随机小数
扩展随机函数
uniform(a,b)
生成一个[a,b]之间的随机小数
randint(a,b)
生成一个[a,b)之间的随机整数
randrange(m,n,k)
生成一个[m,n)之间以k为步长的随机整数
getrandbits(k)
生成一个K比特长的随机整数
choice(seq)
从序列seq中随机选择一个元素
shuffle(seq)
将seq中的元素随机排列
圆周率的计算
蒙特卡洛方法
概率就是比例 直径为2的圆的面积为pi 边长为2的正方形的面积为4 则:1/4圆的面积÷单位正方形的面积=1/4pi 往单位正方形上随机撒大量的点,那么: 落在1/4圆的点数÷落在单位正方形的点数≈1/4pi 点数越多越精确 p
代码
#Pi.py from random import random from time import perf_counter darts=pow(10,6) hits=0.0 start=perf_counter() for i in range (1,darts+1): x,y=random(),random() dist=pow(x**2+y**2,0.5) if dist<=1: hits=hits+1 pi=hits/darts*4 print("圆周率值是:{}".format(pi)) print("运行时间是:{:.5f}s".format(perf_counter()-start))
思维方式
数学思维:找到公式,利用公式求解 计算思维:抽象一种过程,用计算机自动化求解
程序运行时间分析
通过time.perf_counter()函数获得程序运行时间,从而分析程序运行时间的分布,一般程序的运行时间主要用在循环中。