Python嵩天MOOC学习笔记

第八周:程序设计方法学

一、体育竞技分析

模拟:抽象比赛过程 + 自动化执行;当N越大时,比赛结果分析会更科学

python第二版嵩天第六章代码 python嵩天第二版答案第五章_第三方库

  • 打印程序的介绍性信息,提高用户体验
  • 获得程序运行参数:proA,proB,n
  • 利用球员A和B的能力值,模拟n局比赛
  • 输出球员A和B获胜比赛的场次和概率

二、程序设计思维

抽象和自动化:
不是抽象逻辑因果,而是抽象计算的过程,如:汉诺塔、圆周率的计算
天气预报:
利用计算机MM5模型,通过世界各地传感器传回的数据进行计算

计算生态与python语言:
计算生态:开源
python:以开源项目为代表的第三方库;库相互依存和竞争
API(有组织) != 生态(集市)

提高用户体验:

  1. 进度展示:计算时间;若干步骤;存在大量次数的循环
  2. 异常处理:对输入的合规性进行检查;对读写文件的结果进行判断
  3. 打印输出,输出过程信息
  4. 日志文件:对程序异常以及用户使用进行定期记录
  5. 帮助信息

基本的程序设计模式:
①IPO
②自顶向下设计
③模块化设计,分而治之

三、第三方库安装

  1. pip命令

pip命令

描述

pip install <>

安装

pip install -U <>

更新已安装的库

pip uninstall <>

卸载

pip download <>

下载但不安装

pip show <>

列出库的信息

pip search <>

搜索关键词

pip list

列出系统已经安装的库

  1. 集成安装方法:
    批量安装Anaconda
  2. 文件安装方法:
    适用于:pip下载之后无法安装的情况(包括①pip下载了源代码需要在操作系统上编译②操作系统无编译环境)
    lfd.uci.edu/~gohlke/pythonlibs/提供编译后的文件,下载文件之后用pip install <路径/文件名>安装

四、OS库的使用

路径操作:
os.path子库以path为入口,用于操作和处理文件路径

import os.path
import os.path as op

python第二版嵩天第六章代码 python嵩天第二版答案第五章_python第二版嵩天第六章代码_02


python第二版嵩天第六章代码 python嵩天第二版答案第五章_安装方法_03


python第二版嵩天第六章代码 python嵩天第二版答案第五章_python第二版嵩天第六章代码_04


python第二版嵩天第六章代码 python嵩天第二版答案第五章_python_05


python第二版嵩天第六章代码 python嵩天第二版答案第五章_文件名_06


进程管理:

执行程序或命令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画图程序打开后面的图片文件

环境参数:

获取或改变操作系统的环境信息

python第二版嵩天第六章代码 python嵩天第二版答案第五章_文件名_07


python第二版嵩天第六章代码 python嵩天第二版答案第五章_文件名_08


#如果某些字符不能被打印出来,系统会用16进制表示出来

五、第三方库安装脚本

用os.system(“pip install” + lib)遍历所有第三方库的名称,在命令行中打开py文件去执行

举一反三:

  • 编写各类自动化运行程序的脚本,调用已有程序
  • 扩展应用:把文件名集合换成配置文件,以“引擎+文件”的形式运行

六、作业与测试

数字的鲁棒输入:输入十进制数字(浮点整型都有)或者复数,输出该数字的平方

s = input()
try:
    if complex(s) == complex(eval(s)):
        print(eval(s)**2)
except:
    print("输入有误")