08. 程序设计方法学

1 实例 13: 体育竞技分析

2 Python 程序设计思维

计算思维与程序设计

计算思维是第 3 种人类思维特征

  • 逻辑思维:推理和演绎,数学为代表,A->B B->C A->C
  • 实证思维:实验和验证,物理为代表,引力波<-实验
  • 计算思维:设计和构造,计算机为代表,汉诺塔递归

计算生态与Python语言

用户体验与软件产品

提高用户体验的方法
方法 1:进度展示

  • 如果程序需要计算时间,可能产生等待,请增加进度展示
  • 如果程序有若干步骤,需要提示用户,请增加进度展示
  • 如果程序可能存在大量次数的循环,请增加进度展示

方法2:异常处理

  • 当获得用户输入,对合规性需要检查,需要异常处理
  • 当读写文件时,对结果进行判断,需要异常处理
  • 当进行输入输出时,对运算结果进行判断,需要异常处理

提高用户体验的方法
其他类方法

  • 打印输出:特定位置,输出程序运行的过程信息
  • 日志文件:对程序异常及用户使用进行定期记录
  • 帮助信息:给用户多种方式提供帮助信息

软件程序 -> 软件产品
用户体验是程序到产品的关键环节

基本的程序设计模式

3 Python第三方库安装

安装 Python 第三方库的三种方法

  • 方法1(主要方法): 使用 pip 命令

D:>pip install <第三方库名>

使用 -U 标签更新已安装的指定第三方库
D:>pip install –U <第三方库名>

卸载指定的第三方库
pip uninstall <第三方库名>

下载但不安装指定的第三方库
D:>pip download <第三方库名>

列出某个指定第三方库的详细信息
pip show <第三方库名>

根据关键词在名称和介绍中搜索第三方库
pip search <关键词>

列出当前系统已经安装的第三方库
pip list

  • 方法2: 集成安装方法

  • 方法3: 文件安装方法

为什么有些第三方库用 pip 可以下载,但无法安装?

  • 某些第三方库 pip 下载后,需要编译再安装
  • 如果操作系统没有编译环境,则能下载但不能安装
  • 可以直接下载编译后的版本用于安装吗?

4 模块7: os库的基本使用

os 库提供通用的、基本的操作系统交互功能

  • os 库是 Python 标准库,包含几百个函数
  • 常用路径操作、进程管理、环境参数等几类

os库基本介绍

  • 路径操作:os.path 子库,处理文件路径及信息
  • 进程管理:启动系统中其他程序
  • 环境参数:获得系统软硬件信息等环境参数

路径操作

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

1
2
import os.path
import os.path as op

[图片上传中...(image-a2d50b-1527327682473)]

进程管理

os.system(command)

  • 执行程序或命令command
  • 在 Windows 系统中,返回值为 cmd 的调用返回信息

环境参数

获取或改变系统环境信息
os.chdir(path)

os.getcwd()
返回程序的当前路径

os.getlogin()
获得当前系统登录用户名称

os.cpu_count()
获得当前系统的 CPU 数量

os.urandom(n)
获得n个字节长度的随机字符串,通常用于加解密运算

5 实例 14: 第三方库自动安装脚本

1
2
3
4
5
6
7
8
9
10
11
12
#BatchInstall.py
import os
libs = {"numpy","matplotlib","pillow","sklearn","requests",\
"jieba","beautifulsoup4","wheel","networkx","sympy",\
"pyinstaller","django","flask","werobot","pyqt5",\
"pandas","pyopengl","pypdf2","docopt","pygame"}
try:
for lib in libs:
os.system("pip3 install "+lib)
print("Successful")
except:
print("Failed Somehow")

举一反三: 自动化脚本+

  • 编写各类自动化运行程序的脚本,调用已有程序
  • 扩展应用:安装更多第三方库,增加配置文件
  • 扩展异常检测:捕获更多异常类型,程序更稳定友好