欢迎访问学兔兔,学习、交流 分享 !

返回首页 |

Python程序设计基础 原书第4版 (美)托尼 加迪斯(TONY GADDIS)著 苏小红,叶麟,袁永峰译 2019年版

收藏
  • 大小:92.17 MB
  • 语言:中文版
  • 格式: PDF文档
  • 阅读软件: Adobe Reader
资源简介
Python程序设计基础 原书第4版
作者:(美)托尼 加迪斯(TONY GADDIS)著 苏小红,叶麟,袁永峰译
出版时间:2019年版
内容简介
  本书旨在教会读者如何使用Python语言进行程序设计以及解决问题。书中配有大量浅显易懂的实例、伪代码、流程图,各章还附有学习案例,旨在通过逐步解析的方式帮助读者掌握解决问题的方法。 \n本书从计算机的工作原理、数据的存与备份等基础知识引入,先对Python语言的交互模式、脚本模式以及IDLE环境进行概述,然后依次介绍Python的决策结构和布尔逻辑、文件和异常、列表和元组、类和面向对象编程等知识,*后还介绍了事件驱动的GUI编程。
目录
出版者的话

译者序

前言

第1章 计算机与编程 1

1.1 简介 1

1.2 硬件和软件 2

1.2.1 硬件 2

1.2.2 软件 4

1.3 计算机如何存储数据 5

1.3.1 存储数字 6

1.3.2 存储字符 7

1.3.3 高级数字存储 8

1.3.4 其他类型的数据 8

1.4 程序如何工作 9

1.4.1 从机器语言到汇编语言 11

1.4.2 高级语言 11

1.4.3 关键字、操作符和语法概述 12

1.4.4 编译器和解释器 13

1.5 使用Python 14

1.5.1 安装Python 14

1.5.2 Python解释器 14

1.5.3 交互模式 15

1.5.4 在脚本模式下编写和运行Python程序 16

1.5.5 IDLE编程环境 16

复习题 17

第2章 输入、处理与输出 20

2.1 设计一个程序 20

2.1.1 程序开发周期 20

2.1.2 设计过程中的更多技术细节 21

2.1.3 理解程序将要完成的任务 21

2.1.4 决定为完成任务所需采取的步骤 21

2.1.5 伪码 22

2.1.6 流程图 22

2.2 输入、处理与输出 23

2.3 用print函数显示输出 24

2.4 注释 26

2.5 变量 27

2.5.1 用赋值语句创建变量 27

2.5.2 变量命名规则 29

2.5.3 用print函数显示多项内容 30

2.5.4 变量再赋值 30

2.5.5 数值数据类型和数值文本 31

2.5.6 用数据类型str来存储字符串 32

2.6 从键盘读取输入 34

2.7 执行计算 37

2.7.1 浮点数除法与整数除法 39

2.7.2 运算符的优先级 39

2.7.3 用圆括号将运算分组 40

2.7.4 指数运算符 42

2.7.5 求余运算符 42

2.7.6 将数学公式转换成程序语句 43

2.7.7 混合数据类型的表达式与数据类型转换 45

2.7.8 长语句拆分 46

2.8 关于数据输出的更多介绍 47

2.8.1 抑制print函数的换行功能 47

2.8.2 指定一个输出项分隔符 47

2.8.3 转义字符 48

2.8.4 用运算符+来显示多个输出项 49

2.8.5 数据格式化 49

2.8.6 科学记数法形式的格式化 50

2.8.7 插入逗号分隔符 51

2.8.8 指定最小域宽 51

2.8.9 格式化浮点数为百分数形式 52

2.8.10 格式化整数 52

2.9 有名常量 53

2.10 机器龟图形库简介 54

2.10.1 使用机器龟来画线 55

2.10.2 机器龟的转向 55

2.10.3 将机器龟的朝向设置为特定的角度 57

2.10.4 获取机器龟的当前朝向 57

2.10.5 画笔的抬起和放下 57

2.10.6 绘制圆和点 58

2.10.7 修改画笔的宽度 59

2.10.8 改变画笔的颜色 59

2.10.9 修改背景的颜色 59

2.10.10 重新设置屏幕 59

2.10.11 指定图形窗口的大小 59

2.10.12 移动机器龟到指定的位置 60

2.10.13 获取机器龟的当前位置 60

2.10.14 控制机器龟的动画速度 61

2.10.15 隐藏机器龟 61

2.10.16 在图形窗口中显示文本 61

2.10.17 图形填充 62

2.10.18 用命令turtle.done()来保持图形窗口的开放状态 63

复习题 70

第3章 选择结构与布尔逻辑 76

3.1 if语句 76

3.1.1 布尔表达式与关系运算符 77

3.1.2 综合应用 79

3.2 if-else语句 82

3.3 字符串比较 84

3.4 嵌套的选择结构与if-elif-else语句 88

3.4.1 测试一组条件 91

3.4.2 if-elif-else语句 93

3.5 逻辑运算符 94

3.5.1 运算符and 95

3.5.2 运算符or 95

3.5.3 短路定值 96

3.5.4 运算符not 96

3.5.5 再次分析判定贷款资格的程序 96

3.5.6 又一个判定贷款资格的程序 97

3.5.7 用逻辑运算符检查数据范围 98

3.6 布尔变量 99

3.7 机器龟图形库:判断机器龟的状态 100

3.7.1 获取机器龟的位置 100

3.7.2 获取机器龟的朝向 100

3.7.3 检测画笔是否被放下 101

3.7.4 判断机器龟是否可见 101

3.7.5 获取当前颜色 101

3.7.6 获取画笔的线宽 102

3.7.7 获取机器龟的画线速度 102

复习题 107

第4章 循环结构 114

4.1 循环结构简介 114

4.2 while循环:条件控制的循环 115

4.2.1 while循环是先测试的循环 117

4.2.2 无限循环 119

4.3 for循环:计数控制的循环 120

4.3.1 在for循环中使用range函数 122

4.3.2 在循环内部使用目标变量 123

4.3.3 让用户控制循环迭代 126

4.3.4 生成一个取值范围从高到低的迭代序列 127

4.4 计算累加和 128

4.5 标记 131

4.6 验证输入的循环 133

4.7 嵌套循环 137

4.8 机器龟图形库:用循环语句进行绘图设计 142

复习题 145

第5章 函数 150

5.1 函数简介 150

5.1.1 使用函数模块化程序的好处 150

5.1.2 void函数和有返回值函数 151

5.2 定义和调用void函数 152

5.2.1 函数名 152

5.2.2 定义和调用函数 152

5.2.3 Python的缩进 155

5.3 使用函数设计程序 156

5.3.1 使用函数流程图化程序 156

5.3.2 自顶向下的设计 157

5.3.3 层次图 157

5.3.4 暂停执行直到用户按

 Enter键 160

5.4 局部变量 160

5.5 向函数传递参数 162

5.5.1 参数变量的作用域 164

5.5.2 传递多个参数 165

5.5.3 改变参数 166

5.5.4 关键字参数 168

5.6 全局变量和全局常量 169

5.7 有返回值的函数简介:生成随机数 172

5.7.1 标准库函数和import语句 173

5.7.2 产生随机数 173

5.7.3 交互模式下的随机数实验 176

5.7.4 randrange、random和uniform函数 179

5.7.5 随机数种子 179

5.8 自己编写有返回值的函数 181

5.8.1 充分利用return语句 182

5.8.2 如何使用有返回值的函数 182

5.8.3 使用IPO图 184

5.8.4 返回字符串 187

5.8.5 返回布尔值 188

5.8.6 返回多个值 189

5.9 math模块 190

5.10 在模块中存储函数 192

5.11 机器龟图形库:使用函数模块化代码 195

复习题 200

第6章 文件和异常 208

6.1 文件输入和输出简介 208

6.1.1 文件类型 209

6.1.2 文件访问方法 210

6.1.3 文件名和文件对象 210

6.1.4 打开文件 211

6.1.5 指定文件的位置 211

6.1.6 将数据写入文件 212

6.1.7 从文件读取数据 213

6.1.8 将换行符连接到字符串 215

6.1.9 读取字符串并删除其中的换行符 216

6.1.10 将数据追加到已有文件 217

6.1.11 读写数值数据 218

6.2 使用循环处理文件 221

6.2.1 使用循环读取文件并检查文件的结尾 221

6.2.2 使用Python的for循环读取多行 223

6.3 处理记录 227

6.4 异常 237

6.4.1 处理多个异常 242

6.4.2 使用except语句捕获所有异常 243

6.4.3 显示异常的默认错误信息 244

6.4.4 else语句 245

6.4.5 f?inally语句 246

6.4.6 如果异常没有被处理怎么办 247

复习题 247

第7章 列表和元组 251

7.1 序列 251

7.2 列表简介 251

7.2.1 重复运算符 252

7.2.2 使用for循环在列表上迭代 253

7.2.3 索引 253

7.2.4 len函数 254

7.2.5 列表是可变的 254

7.2.6 连接列表 256

7.3 列表切片 257

7.4 使用in操作符在列表中查找元素 259

7.5 列表方法和有用的内置函数 261

7.5.1 del语句 265

7.5.2 min和max函数 265

7.6 复制列表 266

7.7 处理列表 267

7.7.1 计算列表中的数值之和 269

7.7.2 计算列表中数值的平均值 269

7.7.3 将列表作为参数传递给函数 270

7.7.4 从函数返回一个列表 271

7.7.5 处理列表和文件 274

7.8 二维列表 277

7.9 元组 280

7.9.1 重点是什么 281

7.9.2 列表和元组间的转换 282

7.10 使用matplotlib包画出列表数据 282

7.10.1 导入pyplot模块 283

7.10.2 绘制折线图 283

7.10.3 绘制条形图 290

7.10.4 绘制饼图 293

复习题 296

第8章 深入字符串 302

8.1 字符串的基本操作 302

8.1.1 访问字符串中的单个字符 302

8.1.2 字符串连接 305

8.1.3 字符串是不可变的 306

8.2 字符串切片 307

8.3 测试、搜索和操作字符串 311

8.3.1 使用in和not in测试字符串 311

8.3.2 字符串方法 311

8.3.3 重复操作符 318

8.3.4 分割字符串 319

复习题 321

第9章 字典和集合 326

9.1 字典 326

9.1.1 创建字典 326

9.1.2 从字典中检索值 327

9.1.3 使用in和not操作符测试字典中的值 327

9.1.4 向已有字典中添加元素 328

9.1.5 删除元素 329

9.1.6 获取字典中元素的数量 329

9.1.7 字典中数据类型的混合 330

9.1.8 创建空字典 331

9.1.9 使用for循环遍历字典 331

9.1.10 常用字典方法 332

9.2 集合 344

9.2.1 创建集合 345

9.2.2 获取集合中元素的数量 345

9.2.3 添加和删除元素 346

9.2.4 使用for循环在集合上迭代 347

9.2.5 使用in和not in操作符判断集合中的值 348

9.2.6 求集合的并集 348

9.2.7 求集合的交集 349

9.2.8 求两个集合的差集 349

9.2.9 求集合的对称差集 350

9.2.10 求子集和超集 350

9.3 序列化对象 354

复习题 359

第10章 类与面向对象编程 365

10.1 面向过程和面向对象程序设计 365

10.1.1 对象可重用性 366

10.1.2 一个常见的对象例子 366

10.2 类 367

10.2.1 类定义 368

10.2.2 隐藏属性 373

10.2.3 在模块中存储类 375

10.2.4 BankAccount类 376

10.2.5 _?_str_?_方法 379

10.3 使用实例 381

10.3.1 Accessor和Mutator方法 385

10.3.2 传递对象作为参数 388

10.4 设计类的技巧 400

10.4.1 统一建模语言 400

10.4.2 使用类解决问题 400

10.4.3 确定一个类的任务 405

10.4.4 这仅仅是开始 408

复习题 408

第11章 继承 413

11.1 继承简介 413

11.1.1 泛化和特殊化 413

11.1.2 继承和is a关系 413

11.1.3 UML图中的继承 420

11.2 多态 424

复习题 430

第12章 递归 432

12.1 递归简介 432

12.2 递归求解问题 434

12.2.1 使用递归计算阶乘 434

12.2.2 直接递归和间接递归 436

12.3 递归算法示例 437

12.3.1 递归求解列表中元素的和 437

12.3.2 斐波那契数列 438

12.3.3 求最大公约数 439

12.3.4 汉诺塔 440

12.3.5 递归与循环 443

复习题 443

第13章 GUI编程 446

13.1 GUI 446

13.2 tkinter模块 447

13.3 Labe
下载地址