Python嵩天MOOC学习笔记
第八周:程序设计方法学
一、体育竞技分析
模拟:抽象比赛过程 + 自动化执行;当N越大时,比赛结果分析会更科学
- 打印程序的介绍性信息,提高用户体验
- 获得程序运行参数:proA,proB,n
- 利用球员A和B的能力值,模拟n局比赛
- 输出球员A和B获胜比赛的场次和概率
二、程序设计思维
抽象和自动化:
不是抽象逻辑因果,而是抽象计算的过程,如:汉诺塔、圆周率的计算
天气预报:
利用计算机MM5模型,通过世界各地传感器传回的数据进行计算
计算生态与python语言:
计算生态:开源
python:以开源项目为代表的第三方库;库相互依存和竞争
API(有组织) != 生态(集市)
提高用户体验:
- 进度展示:计算时间;若干步骤;存在大量次数的循环
- 异常处理:对输入的合规性进行检查;对读写文件的结果进行判断
- 打印输出,输出过程信息
- 日志文件:对程序异常以及用户使用进行定期记录
- 帮助信息
基本的程序设计模式:
①IPO
②自顶向下设计
③模块化设计,分而治之
三、第三方库安装
- pip命令
pip命令 | 描述 |
pip install <> | 安装 |
pip install -U <> | 更新已安装的库 |
pip uninstall <> | 卸载 |
pip download <> | 下载但不安装 |
pip show <> | 列出库的信息 |
pip search <> | 搜索关键词 |
pip list | 列出系统已经安装的库 |
- 集成安装方法:
批量安装Anaconda - 文件安装方法:
适用于:pip下载之后无法安装的情况(包括①pip下载了源代码需要在操作系统上编译②操作系统无编译环境)
lfd.uci.edu/~gohlke/pythonlibs/提供编译后的文件,下载文件之后用pip install <路径/文件名>安装
四、OS库的使用
路径操作:
os.path子库以path为入口,用于操作和处理文件路径
import os.path
import os.path as op
进程管理:
执行程序或命令commandl,在Windows系统中,返回值为cmd的调用返回信息
import os
#os.system(command)
os.system("C:\\...\\calc.exe")
#此步骤会让程序执行计算器程序,同时成功调用结束返回0
os.system("C:\\Windows\\System32\\mspaint.exe D:\\PYECourse\\grwordcloud.png")
#用空格分开,可以通过mspaint.exe画图程序打开后面的图片文件
环境参数:
获取或改变操作系统的环境信息
#如果某些字符不能被打印出来,系统会用16进制表示出来
五、第三方库安装脚本
用os.system(“pip install” + lib)遍历所有第三方库的名称,在命令行中打开py文件去执行
举一反三:
- 编写各类自动化运行程序的脚本,调用已有程序
- 扩展应用:把文件名集合换成配置文件,以“引擎+文件”的形式运行
六、作业与测试
数字的鲁棒输入:输入十进制数字(浮点整型都有)或者复数,输出该数字的平方
s = input()
try:
if complex(s) == complex(eval(s)):
print(eval(s)**2)
except:
print("输入有误")