导图社区 Python程序设计方法学
本导图主要介绍了Python中的程序设计思维、第三方库的安装方法、os库的使用,导图内容来源于中国大学MOOC—Python语言程序设计(北京理工大学),配合课程使用效果更好。
编辑于2021-06-25 17:07:46本导图为作者备考中级经济师(人力资源)过程中形成的学习笔记,已取得人力资源管理师证。中级经济专业技术资格考试设《经济基础知识》和《专业知识和实务》两个科目,题型均为客观题。《专业知识和实务》为专业科目,分为工商管理、农业经济、财政税收、金融、保险、运输经济、人力资源管理、旅游经济、建筑与房地产经济、知识产权10个专业类别;《经济基础知识》为公共科目,由经济学基础、财政、货币与金融、法律、会计、统计六个部分组成。
本导图为中级经济师考试科目《经济基础知识》的统计部分,主要包括统计与数据科学、描述统计、抽样统计、回归分析、时间序列分析。
本导图为中级经济师考试科目《经济基础知识》的货币与金融部分,主要包括货币供求与货币均衡、中央银行与货币政策、商业银行与金融市场、金融风险与金融监管、对外金融关系与政策。
社区模板帮助中心,点此进入>>
本导图为作者备考中级经济师(人力资源)过程中形成的学习笔记,已取得人力资源管理师证。中级经济专业技术资格考试设《经济基础知识》和《专业知识和实务》两个科目,题型均为客观题。《专业知识和实务》为专业科目,分为工商管理、农业经济、财政税收、金融、保险、运输经济、人力资源管理、旅游经济、建筑与房地产经济、知识产权10个专业类别;《经济基础知识》为公共科目,由经济学基础、财政、货币与金融、法律、会计、统计六个部分组成。
本导图为中级经济师考试科目《经济基础知识》的统计部分,主要包括统计与数据科学、描述统计、抽样统计、回归分析、时间序列分析。
本导图为中级经济师考试科目《经济基础知识》的货币与金融部分,主要包括货币供求与货币均衡、中央银行与货币政策、商业银行与金融市场、金融风险与金融监管、对外金融关系与政策。
程序设计方法学
本导图主要介绍了Python中的程序设计思维、第三方库的安装方法、os库的使用,导图内容来源于中国大学MOOC—Python语言程序设计(北京理工大学),配合课程使用效果更好。
体育竞技分析
自顶向下(设计)
将一个总问题表达为若干个小问题
自底向上(执行)
分单元测试,逐步组装
体育竞技分析
def main(): printIntro() probA,probB,n=getInputs() winsA,winsB=simNGames(n,probA,probB) printSummary(winsA,winsB)
打印程序的介绍性信息
def printIntro(): print("本程序用于模拟选手A和B的某种竞技比赛") print("程序运行需要输入A和B的能力值,以0到1之间的小数表示")
获得程序运行参数:ProA、ProB,n
def getInputs(): a=eval(input("输入选手A的能力值:")) b=eval(input("输入选手B的能力值:")) n=eval(input("模拟比赛的场次:")) return a, b, n
利用球员A和B的能力值模拟n局比赛
一局比赛中胜负的判定
def gameOver(a,b): #当A或B积够15分时一局比赛结束 return a==15 or b==15 def simOneGame(probA,probB): #判断一局比赛的胜负 scoreA, scoreB = 0, 0 serving = "A" while not gameOver(scoreA,scoreB):#random.random()生成[0,1)的随机数,A、B的能力值均大于该随机数时同时加1分,一大于一小于则大于的加1分 if serving == "A": if random() < probA: scoreA += 1 else: serving = "B" else: if random() < probB: scoreB += 1 else: serving = "A" return scoreA, scoreB
n局比赛中A、B分别胜利的局数
def simNGames(n,probA,probB):#统计A、B胜利的局数 winsA, winsB = 0, 0 for i in range(n): scoreA, scoreB=simOneGame(probA, probB) if scoreA > scoreB: winsA += 1 else: winsB += 1 return winsA,winsB
输出球员A和B获胜比赛的场次和概率
def printSummary(winsA,winsB): n = winsA+winsB print("共模拟{}场比赛".format(n)) print("选手A获胜{}场比赛,占比{:0.1%}".format(winsA,winsA/n)) print("选手B获胜{}场比赛,占比{:0.1%}".format(winsB,winsB/n))
Python程序设计思维
计算思维与程序设计
三种思维模式
逻辑思维
推理和演绎,以数学为代表
实证思维
实验和验证,以物理为代表
计算思维
设计和构造,以计算机为代表
例子
计数求和
逻辑思维: S=(a1+an)*n/2 计算思维: s=0 for i in range(1,101): s+=1
圆周率的计算
逻辑思维: p 计算思维: p
汉诺塔问题
逻辑思维: 2^n-1 计算思维: count=0 def hanoi(n,src,dst,mid):#把n个圆盘按照从小到大的顺序从初始柱移动到目标柱 global count if n==1: print("{}:{}-->{}".format(1,src,dst)) count+=1 else: hanoi(n-1,src,mid,dst)#把n-1个圆盘按照从小到大的顺序从初始柱移动到中转柱 print("{}:{}-->{}".format(n,src,dst))#把第n个圆盘从初始柱移动到目标柱 count+=1 hanoi(n-1,mid,dst,src)#把n-1个圆盘按照从小到大的顺序从中转柱移动到初始柱 hanoi(4,"A","B","C") print(count)
天气预报
实证思维+逻辑思维: 经验+猜 计算思维: MM5模型
编程是将计算思维变成现实的手段
计算生态与Python语言
计算生态
大教堂模式
1983, Richard Stallman启动GNU项目 专业人士编写,但反软件版权,提倡软件自由
集市模式
1991, Linus Torvalds发布了Linux内核 所有人都可以参与软件的编写和完善
Python
大量的第三方库
库在不断更新和迭代
社区庞大
编程是利用计算生态快速解决问题
用户体验与软件产品
进度展示
异常处理
基本的程序设计模式
IPO
Input、Process、Output
自顶向下设计
模块化设计
配置化设计
程序引擎+配置文件
应用开发的四个步骤
1. 产品定义
2. 系统架构
3. 设计与实现
4. 用户体验
Python第三方库安装
Python社区
超过13万个第三方库
安装第三方库的方法
pip指令
python -m pip install --upgrade pip
pip安装工具的升级
pip install <第三方库名称>
安装第三方库
pip install -U <第三方库名>
更新第三方库
pip uninstall <第三方库名>
卸载第三方库
pip download <第三方库名>
下载但不安装第三方库
pip show <第三方库名>
列出第三方库的详细信息
pip search <关键词>
根据关键词在名称和介绍中搜索第三方库
pip list
列出当前系统已经安装的第三方库
集成安装:anaconda
支持800多个第三方库 包含多个主流工具 适合数据计算领域开发
文件安装
一些第三方库pip可以下载但无法安装,这是因为其未编译,此时需要在http://www.lfd.uci.edu/~gohlke/pythonlibs/下载其编译后的版本,然后使用pip指令安装。
os库的使用
os库基本介绍
提供通用的、基本的操作系统交互功能 常用功能:路径操作、进程管理、环境参数
路径操作
os.path字库,处理文件路径及信息 import os.path
os.path.abspath()
对给定文件名前加上当前工作目录的绝对路径,并不是显示给定文件的所在路径 p
os.path.normpath()
路径格式规范化 p
os.path.relpath()
相对路径 p
os.path.dirname()
返回文件所属目录 p
os.path.basename()
返回文件名称 p
os.path.join(path,paths)
路径合并,第一个路径必须以规范形式输入,否则会报错 p
os.path.exists()
判断文件或目录是否存在,存在返回True,不存在返回False p
os.path.isfile()
判断文件是否存在,存在返回True,不存在返回False
os.path.isdir()
判断目录是否存在,存在返回True,不存在返回False
os.path.getatime()
返回文件或目录上一次访问的时间,以浮点形式表示 p
os.path.getmtime()
返回文件或目录最近一次修改的时间,以浮点形式表示 p
os.path.getctime()
返回文件或目录的创建时间,以浮点形式表示 p
os.path.getsize()
返回文件的大小,以字节为单位表示 p
进程管理
启动系统中其他程序
启动程序
系统程序:直接输入程序名称即可 计算器:os.system("calc.exe") 画图:os.system("mspaint") 第三方程序:需输入完整的路径 有道词典:os.system(r'"C:\Program Files (x86)\Youdao\Dict\YoudaoDict.exe"') 加r''是因为路径字符串中有空格
启动程序并打开文件
使用画图打开文件fivestar os.system("mspaint.exe F:\\python\\Python语言程序设计\\fivestar.png")
环境参数
获得系统软硬件信息等环境参数
os.chdir()
修改当前程序操作的路径
os.getcwd()
返回程序的当前路径
os.getlogin()
获得当前系统用户名称
os.cup_count()
返回当前系统的CPU数量
os.urandom(n)
获得n个字节长度的随机字符串,常用于加解密运算
第三方库自动安装脚本
p