《Python程序设计 计算思维视角》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:陈杰华编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2018
  • ISBN:9787302513414
  • 页数:336 页
图书介绍:本书分为10章,介绍Python程序设计的算法、数据和计算、函数、模块、异常处理、文件、面向对象编程、图形界面设计、绘制曲线、实验。

第一部分 基础知识 3

第1章 计算思维与Python语言 3

1.1 程序设计 3

1.1.1 程序与计算机程序 3

1.1.2 程序设计步骤 5

1.1.3 程序设计语言 6

1.1.4 高级语言分类 7

1.2 计算思维 8

1.2.1 计算思维概念 9

1.2.2 计算思维特征 11

1.3 Python简介 12

1.3.1 Python优点 12

1.3.2 Python缺点 14

1.3.3 Python主要应用 15

1.4 Python运行环境 16

1.4.1 Python下载与安装 16

1.4.2 Python帮助信息 19

1.4.3 Python文件夹结构 21

1.4.4 Python运行模式 21

习题1 27

第2章 算法 29

2.1 程序设计方法 29

2.1.1 结构化程序设计方法 29

2.1.2 面向对象程序设计方法 30

2.2 算法 32

2.2.1 求解问题方式 32

2.2.2 算法概念 32

2.2.3 算法特征 32

2.3 算法表示 33

2.3.1 使用自然语言描述算法 33

2.3.2 使用传统流程图描述算法 34

2.3.3 使用N-S图描述算法 36

2.3.4 使用伪代码描述算法 37

2.4 常用算法介绍 37

2.4.1 简单算法 37

2.4.2 阶乘算法 38

2.4.3 求斐波那契数算法 38

2.4.4 求最大公约数算法 39

2.4.5 判断素数算法 40

2.5 综合算法介绍 40

2.5.1 数值计算 40

2.5.2 穷举算法 41

2.5.3 查找算法 43

2.5.4 排序算法 44

2.6 迭代、递推和递归 46

2.6.1 迭代 46

2.6.2 递推 47

2.6.3 递归 48

习题2 48

第3章 数据与计算 50

3.1 输入输出 50

3.1.1 输入数据 50

3.1.2 输出数据 51

3.2 编码风格与简单程序 53

3.2.1 编码风格 53

3.2.2 简单程序 53

3.3 组合符号 54

3.3.1 标识符 54

3.3.2 关键字 55

3.3.3 预定义标识符 56

3.3.4 命名规则 57

3.4 数据类型 57

3.4.1 数据类型及其分类 57

3.4.2 常量和变量 58

3.5 数字数据 58

3.5.1 整型数据 58

3.5.2 实型数据 61

3.5.3 分数型数据 62

3.5.4 复数型数据 62

3.6 字符串型数据 63

3.6.1 字符串常量 63

3.6.2 转义字符 63

3.6.3 字符串测试函数 64

3.6.4 字符串运算符 65

3.6.5 字符串内置函数 66

3.7 布尔型数据 68

3.7.1 关系运算 68

3.7.2 布尔常量 69

3.7.3 布尔运算 69

3.8 序列数据 70

3.8.1 列表 70

3.8.2 元组 74

3.8.3 字典 74

3.8.4 集合 76

习题3 77

第4章 流程控制 80

4.1 简单程序与流程控制 80

4.1.1 简单程序 80

4.1.2 流程控制语句 81

4.1.3 测试条件 81

4.2 分支选择 81

4.2.1 单分支选择 82

4.2.2 双分支选择 83

4.2.3 多分支选择 84

4.3 循环控制 86

4.3.1 while语句 86

4.3.2 range()函数 89

4.3.3 for语句 89

4.3.4 循环嵌套 94

4.3.5 continue、break和pass语句 98

4.4 列表处理 101

4.4.1 一维列表 102

4.4.2 二维列表 107

4.5 查找与排序 114

4.5.1 折半查找 114

4.5.2 排序 115

4.6 字符串处理 118

4.6.1 单个字符串 118

4.6.2 多个字符串 122

习题4 123

第5章 函数 125

5.1 函数定义与调用 125

5.1.1 函数定义与调用 125

5.1.2 嵌套调用 128

5.1.3 返回值类型与函数类型 129

5.1.4 返回列表 130

5.2 形式参数与实在参数 130

5.2.1 简单变量作为实参 131

5.2.2 一维列表作为实参 137

5.2.3 二维列表作为实参 139

5.2.4 可变参数 139

5.3 变量的作用域 140

5.3.1 全局变量与局部变量 140

5.3.2 global语句 141

5.3.3 变量同名 143

5.4 匿名函数 144

5.4.1 lambda函数 144

5.4.2 程序示例 144

5.5 递归函数 145

5.5.1 递归函数及其调用 145

5.5.2 程序示例 145

习题5 151

第6章 模块 152

6.1 模块 152

6.1.1 导入模块 152

6.1.2 导入模块成员 153

6.1.3 模块搜索路径 154

6.2 数值类模块 155

6.2.1 math模块 155

6.2.2 cmath模块 157

6.2.3 decimal模块 157

6.2.4 fractions模块 159

6.3 random模块 161

6.3.1 常用函数 161

6.3.2 程序示例 163

6.4 时间类模块 165

6.4.1 time模块 167

6.4.2 datetime模块 171

6.4.3 calendar模块 172

6.5 os模块 174

6.5.1 常用函数 174

6.5.2 程序示例 176

6.6 sys模块 178

6.6.1 常用函数 178

6.6.2 命令行参数 179

6.7 自定义模块 180

6.7.1 主模块 181

6.7.2 自定义模块示例 182

6.7.3 Python编译文件 183

6.8 自定义包 183

6.8.1 包与模块的组织结构 183

6.8.2 包与模块的导入 184

6.8.3 自定义包示例 185

习题6 187

第7章 数据文件 189

7.1 文件概述 189

7.1.1 引言 189

7.1.2 文件分类 189

7.2 打开文件与关闭文件 191

7.2.1 打开文件 191

7.2.2 关闭文件 193

7.3 读写文本文件 193

7.3.1 读取文件函数 193

7.3.2 读取文本文件 194

7.3.3 写入文本文件 198

7.4 读写二进制文件 200

7.4.1 将字符串转换为字节数据 201

7.4.2 将字节数据转换为字符串 201

7.4.3 读写二进制文件 202

7.5 struct模块 202

7.5.1 pack()、unpack()和calcsize()函数 203

7.5.2 程序示例 204

7.6 fileinput模块 206

7.6.1 fileinput模块 206

7.6.2 程序示例 206

7.7 codecs模块 208

7.7.1 读取文本文件 209

7.7.2 写入文本文件 209

习题7 210

第8章 面向对象编程 212

8.1 面向对象编程基础 212

8.1.1 对象与类 212

8.1.2 对象特征 213

8.1.3 继承 213

8.1.4 多态性与重载 214

8.2 类的定义和引用 215

8.2.1 类的构成 215

8.2.2 类的定义与引用 215

8.2.3 构造函数和析构函数 217

8.2.4 实例变量 219

8.2.5 私有成员与公有成员 220

8.2.6 公有方法与私有方法 221

8.3 继承 222

8.3.1 单继承 222

8.3.2 多继承 223

8.3.3 方法重写 224

8.4 多态与运算符重载 224

8.4.1 多态 224

8.4.2 运算符重载 225

习题8 226

第9章 异常处理 229

9.1 程序错误及其处理 229

9.1.1 程序错误类型 229

9.1.2 程序运行错误处理方法 232

9.2 标准异常 233

9.2.1 标准异常 233

9.2.2 标准异常示例 234

9.3 抛出异常和捕捉异常 235

9.3.1 抛出异常 235

9.3.2 捕捉异常 237

9.4 断言 240

9.4.1 断言概念 240

9.4.2 assert语句 240

9.5 自定义异常类 242

9.5.1 引言 242

9.5.2 程序示例 242

习题9 243

第10章 图形界面设计 245

10.1 Python图形界面设计 245

10.1.1 Python图形开发库 245

10.1.2 Tkinter的常用组件与标准属性 246

10.1.3 创建窗口 246

10.2 布局管理 247

10.2.1 pack布局的管理 247

10.2.2 grid布局的管理 249

10.2.3 place布局的管理 251

10.3 Tkinter的常用组件 252

10.3.1 Label组件 252

10.3.2 Button组件 253

10.3.3 Entry和Text组件 255

10.3.4 Listbox组件 257

10.3.5 Radiobutton和Checkbutton组件 259

10.3.6 Frame与LabelFrame组件 261

10.3.7 Scrollbar组件 262

10.3.8 Menu组件 264

10.3.9 对话框 266

10.4 事件处理 271

10.4.1 事件类型 271

10.4.2 事件绑定 273

10.4.3 键盘事件 275

习题10 276

第11章 绘制曲线 278

11.1 Canvas组件 278

11.1.1 Canvas对象及其通用属性 278

11.1.2 屏幕坐标 279

11.2 绘制图形 279

11.2.1 绘制直线、矩形和多边形 279

11.2.2 绘制圆弧和椭圆 282

11.3 显示位图、图像与文本 285

11.3.1 显示位图 285

11.3.2 显示图像 286

11.3.3 显示文本 287

11.4 控制图形 288

11.4.1 删除图形 288

11.4.2 移动图形 289

11.4.3 位置坐标 289

11.4.4 缩放图形 290

11.4.5 绘制函数图形 292

11.5 体验内置的turtle演示程序 293

11.5.1 利用IDLE内置程序 293

11.5.2 利用安装文件夹中的演示程序 294

11.6 turtle绘图 296

11.6.1 turtle模块 296

11.6.2 应用案例 297

11.7 分形图形 301

11.7.1 Koch曲线 301

11.7.2 Hilbert曲线 302

11.7.3 分形树 304

11.8 显示字体 306

11.8.1 通过元组显示字体 306

11.8.2 通过Font对象显示字体 307

习题11 308

第二部分 实验 313

实验Ⅰ 数据与计算 313

实验Ⅱ 流程控制 316

实验Ⅲ 函数 319

实验Ⅳ 数据文件 323

实验Ⅴ 面向对象编程 325

实验Ⅵ 图形界面设计 329

实验Ⅶ 绘制曲线 333

参考文献 336