图书介绍

华章程序员书库 Python入门经典 以解决计算问题为导向的Python编程实践2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

华章程序员书库 Python入门经典 以解决计算问题为导向的Python编程实践
  • 潘曲(William F. Punch),尹鲍德(Richard Enbody)著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111394135
  • 出版时间:2012
  • 标注页数:454页
  • 文件大小:44MB
  • 文件页数:468页
  • 主题词:软件工具-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

华章程序员书库 Python入门经典 以解决计算问题为导向的Python编程实践PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 关于计算机的思考1

第0章 计算机科学研究1

0.1为什么要研究计算机科学1

0.1.1计算机科学的重要性1

0.1.2计算机“科学”1

0.1.3通过编程学习计算机科学3

0.2编程的困难和使命3

0.2.1困难1:同时做两件事3

0.2.2困难2:什么是好程序5

0.2.3程序的使命6

0.3选择一种计算机语言6

0.3.1各种计算机语言6

0.3.2为什么选Python6

0.3.3 Python是最好的程序语言吗7

0.4什么是计算7

0.5什么是计算机8

0.5.1自然界中的计算8

0.5.2人类制造的计算机10

0.6现代电子计算机11

0.6.1就是开关11

0.6.2晶体管12

0.7从更高层面来了解现代计算机16

0.8数据表示17

0.8.1二进制数据17

0.8.2使用二进制18

0.8.3局限性18

0.8.4字符表示19

0.8.5其他数据表示20

0.8.6数字代表什么21

0.8.7数据量21

0.8.8数据量有多大21

0.9后续章节概述22

0.10总结22

第二部分 开始编程23

第1章 入门23

1.1练习,练习,再练习23

1.2快速入门——计算圆周长的程序24

1.3交互式会话26

1.4程序组成部分27

1.4.1模块27

1.4.2表达式和语句28

1.4.3空白29

1.4.4注释29

1.4.5 Python的特殊元素:标记30

1.4.6对象命名31

1.5变量32

1.6对象和类型34

1.6.1数字36

1.6.2其他内置类型37

1.6.3对象类型:非变量类型38

1.6.4创建新值39

1.7运算符40

1.7.1整数运算符40

1.7.2浮点运算符41

1.7.3混合运算符41

1.7.4运算符顺序和圆括号42

1.7.5增强的赋值运算符:快捷方式43

1.8第一个模块:math模块44

1.9开发算法45

1.10总结47

1.11视觉场景:海龟绘图47

习题48

编程项目50

第2章 控制语句52

2.1选择语句:if52

2.1.1利用布尔值做决定52

2.1.2 if语句53

2.1.3示例:在篮球运动中,领先多少分才安全53

2.1.4循环58

2.1.5例子:寻找完全数60

2.1.6例子:对数字分类63

2.2深入控制语句65

2.2.1真与假:布尔值65

2.2.2布尔变量66

2.2.3关系运算符66

2.2.4布尔运算符69

2.2.5优先级71

2.2.6布尔运算符示例71

2.2.7另一种赋值方式73

2.2.8用于判定的选择语句75

2.2.9 Python判定语句进阶76

2.2.10循环:while语句78

2.2.11信号量循环84

2.2.12循环总结85

2.2.13 for语句进阶85

2.2.14嵌套87

2.2.15 冰雹序列示例88

2.3视觉场景:用pylab对数据绘图89

2.3.1使用列表和第一次绘制89

2.3.2更有趣的绘图:正弦波91

2.4计算机科学观点:最小的通用计算92

2.5总结93

习题93

编程项目97

第3章 算法和程序开发99

3.1什么是算法99

3.2算法特征100

3.2.1算法和程序100

3.2.2细化101

3.2.3有效性101

3.2.4指定行为102

3.2.5通用算法102

3.2.6真的可以实现一切吗102

3.3程序是什么102

3.3.1可读性102

3.2.2鲁棒性105

3.3.3正确性105

3.4程序设计策略105

3.4.1参与并提交106

3.4.2了解,然后想象106

3.4.3编程之前先思考107

3.4.4实验107

3.4.5简化107

3.4.6停下来思考108

3.4.7放松:让自己休息一下108

3.5简单示例109

3.5.1搭建框架109

3.5.2输出109

3.5.3输入110

3.5.4计算112

3.6总结116

习题116

第三部分 组织:数据结构和函数117

第4章 字符串117

4.1字符串类型117

4.1.1三重引号字符串118

4.1.2非显示字符118

4.1.3字符串表示形式118

4.1.4字符序列119

4.1.5索引和分片120

4.2字符串操作123

4.2.1连接(+)和重复(*)123

4.2.2“+”什么时候表示加法运算,什么时候表示连接运算124

4.2.3比较运算符125

4.2.4 in运算符126

4.2.5字符串集合是不可变的126

4.3函数和方法预览127

4.3.1第一步:什么是函数127

4.3.2选择方法的名字和参数130

4.3.3字符串方法131

4.3.4字符串函数132

4.4字符串的格式化输出132

4.4.1描述符码133

4.4.2宽度描述符133

4.4.3浮点数精度描述符134

4.5字符串与控制语句134

4.6处理字符串137

4.6.1示例:记录人名137

4.6.2回文139

4.7示例:计算扑克牌141

4.8总结148

习题148

编程项目151

第5章 函数快速入门154

5.1函数是什么154

5.2 Python函数155

5.3函数控制语句157

5.3.1函数控制语句详解157

5.3.2另一个函数示例159

5.3.3函数示例:猜词160

5.3.4函数调用函数164

5.3.5什么时候使用函数164

5.3.6如果没有return语句会如何165

5.3.7如果有多条return语句会如何165

5.4视觉场景:用海龟绘图法绘制美国国旗166

5.5总结166

习题166

编程项目169

第6章 列表和元组171

6.1什么是列表171

6.2操作列表172

6.2.1索引和分片172

6.2.2运算符173

6.2.3函数174

6.2.4列表循环175

6.3列表新内容175

6.3.1列表可变性175

6.3.2列表方法176

6.4 range、split及其他函数和方法178

6.4.1 range、split和多重赋值178

6.4.2使用join在列表和字符串之间转换179

6.4.3 sorted函数180

6.5示例181

6.5.1字谜181

6.5.2示例:文件分析184

6.6可变对象及其引用187

6.6.1深拷贝与浅拷贝191

6.6.2可变与不可变192

6.7元组193

6.7.1从列表到元组194

6.7.2为什么需要元组195

6.8列表:数据结构195

6.8.1数据结构示例196

6.8.2数据结构的另一个示例196

6.9算法示例:美国环境保护署通车里程数据197

6.10列表解析204

6.11视觉场景:更多绘制任务205

6.11.1 numpy阵列205

6.11.2绘制三角函数207

6.12总结207

习题207

编程项目213

第7章 深入了解函数217

7.1函数调用函数217

7.2作用域219

7.2.1实参、形参和命名空间220

7.2.2传递可变对象221

7.2.3返回复杂对象223

7.2.4重构evens224

7.3默认值以及形参为关键字225

7.3.1示例:默认值和参数关键字225

7.3.2默认值问题226

7.4函数和对象227

7.5示例:确定最终成绩228

7.5.1数据228

7.5.2设计229

7.5.3函数:weightedGrade229

7.5.4函数:grade230

7.5.5函数:main230

7.5.6使用示例231

7.6“传值”或者“传引用”231

7.7总结231

习题231

编程项目234

第8章 字典和集合236

8.1字典236

8.1.1字典示例236

8.1.2 Python字典237

8.1.3字典索引和赋值237

8.1.4运算符238

8.2单词计数示例241

8.2.1统计字符串中的单词数241

8.2.2《葛底斯堡演说》中的单词出现频率241

8.2.3输出和注释244

8.3示例:周期表245

8.3.1使用CSV文件245

8.3.2算法概述246

8.3.3实现分治的函数246

8.4集合250

8.4.1集合的历史250

8.4.2集合的组成250

8.4.3 Python集合250

8.4.4 Python集合的方法、运算符和函数251

8.4.5集合方法251

8.5集合应用255

8.5.1不同文件中单词之间的关系255

8.5.2输出和注释257

8.6作用域:完整的故事258

8.6.1命名空间和作用域258

8.6.2作用域搜寻规则258

8.6.3局部命名空间258

8.6.4全局命名空间259

8.6.5内置模块262

8.6.6封闭式变量262

8.7 Python指针:使用zip创建字典263

8.8视觉场景:词频条形图264

8.8.1正确获取数据264

8.8.2标签和xticks命令265

8.8.3绘图265

8.9总结266

习题266

编程项目270

第9章 文件272

9.1什么是文件272

9.2存取文件:读取文本文件272

9.2.1其他文件存取方法273

9.2.2数据流274

9.3存取文件:写文本文件274

9.4在程序中存取文本文件275

9.5创建文件和重写文件276

9.5.1通用新行格式276

9.5.2文件内移动277

9.6关闭文件278

9.7 CSV文件278

9.7.1 CSV模块279

9.7.2 CSV Reader279

9.7.3 CSV Writer280

9.7.4示例:更新某些成绩280

9.8示例:反复提示,要求输入正确的文件名282

9.9模块:os283

9.9.1目录/文件夹的结构284

9.9.2os模块函数285

9.9.3 os模块示例286

9.10总结288

习题288

编程项目289

第10章 程序开发进阶291

10.1简介291

10.2分治291

10.3乳腺癌分类291

10.3.1问题292

10.3.2方法:分类292

10.3.3训练和测试分类器292

10.3.4构造分类器292

10.4设计分类器算法294

10.4.1先分解,再合并296

10.4.2数据结构296

10.4.3文件格式296

10.4.4 makeTrainingSet函数297

10.4.5 makeTestSet函数300

10.4.6 trainClassifier函数300

10.4.7第2轮修改后的trainClassifer302

10.4.8用新数据测试分类器304

10.4.9 reportResults函数308

10.5在完整数据上运行分类器309

10.6其他有趣的问题312

10.6.1标签云312

10.6.2标准普尔500预测313

10.6.3用国旗预测宗教315

10.7总结316

习题316

编程项目316

第四部分类:自定义数据结构和算法319

第11章类319

11.1面向对象编程319

11.1.1 Python是面向对象的320

11.1.2 OOP特性320

11.2使用OOP320

11.3使用类和实例321

11.3.1内置类和实例321

11.3.2第一个类322

11.3.3修改属性323

11.3.4实例和类之间的特殊关系:instance-of324

11.4对象方法326

11.4.1使用对象方法326

11.4.2编写方法327

11.4.3特殊参数self328

11.4.4方法是类实例的接口329

11.5融入Python类模型330

11.5.1程序员定义的类330

11.5.2 Student类330

11.5.3 Pyhon标准方法331

11.5.4三种角色:类设计者、程序员和用户334

11.6示例:Point类334

11.6.1构造函数335

11.6.2距离335

11.6.3两点求和336

11.6.4改进Point类336

11.7 Pyhon和OOP338

11.7.1封装性338

11.7.2继承338

11.7.3多态性338

11.8 Python和其他OOP语言338

11.8.1公有与私有338

11.8.2使用双下划线表示私有339

11.8.3 Pyhon的宗旨340

11.8.4修改实例340

11.9总结340

习题340

编程项目341

第12章 类进阶344

12.1更多类属性344

12.2 Python实现机制345

12.2.1类、类型与自检345

12.2.2运算符重载347

12.3自定义运算符重载347

12.4创建有理数类349

12.4.1生成类350

12.4.2分数加法回顾351

12.4.3分数加法353

12.4.4相等和分数化简356

12.4.5应用分治358

12.5错误消息358

12.5.1自检359

12.5.2修复int+Rational错误361

12.6继承362

12.6.1“寻找属性”游戏362

12.6.2使用继承364

12.6.3实例:物理学标准模型365

12.7总结369

习题369

第13章 使用类开发程序372

13.1捕食问题372

13.1.1规则372

13.1.2面向对象的模拟373

13.2类373

13.2.1 Island类373

13.2.2捕食者和猎物、动物种类375

13.2.3捕食者类和猎物类377

13.2.4对象图378

13.2.5填充Island378

13.3添加行为380

13.3.1细化:添加移动380

13.3.2时间循环仿真382

13.4逐步求精383

13.4.1改进的时间循环383

13.4.2繁殖385

13.4.3进食387

13.4.4时钟节拍388

13.5细化问题388

13.5.1移动多少次388

13.5.2动物数量的图形化389

13.6总结390

习题390

第五部分 成为更好的程序员391

第14章 异常和异常处理391

14.1简介391

14.2基本的异常处理392

14.3有关异常的哲学395

14.4异常:else和finally396

14.5异常的用法398

14.5.1检查输入398

14.5.2检查文件打开399

14.6深入异常399

14.6.1 raise399

14.6.2自定义异常400

14.7示例:密码管理400

14.8总结403

习题403

第15章 测试405

15.1为什么要进行测试405

15.1.1错误类型405

15.1.2 “bug”和调试406

15.2测试类型407

15.2.1测试很难407

15.2.2测试的重要性408

15.3示例408

15.3.1 NBA效率408

15.3.2基本算法408

15.4混合测试411

15.4.1捕捉用户错误411

15.4.2捕获开发者犯的错误412

15.5自动测试413

15.5.1 doctest414

15.5.2其他类型的测试416

15.6总结416

习题416

第16章 递归:另一种控制机制417

16.1什么是递归417

16.2数学和兔子418

16.3自定义递归:反转字符串420

16.4递归如何实现422

16.4.1栈的数据结构422

16.4.2栈和函数调用424

16.5用递归表示图形425

16.5.1递归树425

16.5.2 Sierpinski三角形427

16.6从递归到非递归428

16.7总结428

16.8习题428

附录431

附录A开始使用Python431

附录B用海龟绘图法进行简单绘图439

附录C绘图和数值工具:快速浏览442

附录D Python 3.0451

附录E ASCII码表453

附录F优先级454

热门推荐