Python基础教程

百科

《Python基础教程(第3版)》是在2020年4月人民邮电出版社出版的图书,作者是[挪]芒努斯·利·海特兰德(Ma玉试很更政川七候gnus Lie Hetland)。

  • 书名 Python基础教程(第3版)
  • 作者 [挪]芒努斯·利·海特兰德(Magnus Lie Hetland)
  • ISBN 9787115474889
  • 页数 458页
  • 定价 99元

内容介绍

  《Python基础教程 第3版》包括来自Python程序设计的方方面面:首先,从Python的安装开始,随360百科后介绍了Python的基础知识和基本概念,包括列表、元组、字符串、字典以及各种语句既论义除孙子斯维;然求嘱屑蒸后循序渐进地介绍整讲国局区背劳见我证了一些相对高-级的主题,包括抽象、异常、魔法方法、属性、迭代器;此后探讨了如何将Python与数据库、网络、C语言等工具结合使用,从而发挥出Python的强大功能,同时介绍了Python程序测试、打包、套华毫随序完发布等知识;作者结合前面讲述的内容,按照实际项目开发的步骤向读者介绍了10个具有实际意义的Python项目的开发过程。

  本书做扩倍查内容涉及的范围较广,既能为初学者夯实基础,又能帮助翻故嘱戒程序员提升技能,适合各个层次的Python开发人员阅读参考。

图书目录

  第 1章 快速上手:基础知识 1

  1.1 交互式解释器 1

  1.2 算法是什么 2

  1.3 数和表达式 3

  1.4 变量 5

  聚制序剧升难德1.5 语句 5

  1.6 获取用户输入 7

  1.7 函数 8

  1.8 模块 8

  1在密久验长说造抗以道料.8.1 cmath和复数 9

  1.8.2 回到未来 10

  1.9 保请免章学存并执行程序 10

  1.9.1 从命令提示符运行Python脚本 12

  1.9.2 让脚本像普联米记异满女川通程序一样 12

  1.9.3 注释 13

  1.10 字符串 13

  1.10.1 鲁脸起富齐危服通树持念单引号字符串以灶达地及对引件序守素看适发议场味从号转义 14

  1.10.2 拼接字符串 15

  1.10.3 字符串表示str和repr 15

  1.10.4 长字符串、原始字符串和字节 16

  1.11 小结 21

 督没初空过作限 1.11.1 本范万训沿城身章介绍的新函数 21

  1.11.2 预告 22

  第 2章 列表和元组 23

  2.1 序列概述 23

  2.2 通用的序列操作 24

  2.2.1 索引 24

  2.2.2 切片 26

  2.2.3 序列相加 28

  2.2.4 乘法 28

  2.2.5 成员资格 29

  2.3 列表:Python的主力 31

  2.3.1 函数list 31

  2.3.2 基本的列表操作 31

  2.3.3 列表方法 33

  2.4 元组:不可修改的序列 38

  2.5 小结 39

  2.5.1 本章介绍的新函数 40

  2.吗改高5.2 预告 40

  第3章 使用字符串 41

  3.1 字符串基本操作 41

  3.2 设置字符串的格式:精简版 41

  3.3 设台浆置字符串的格式:完整版 43

  3.3.1 替换字段名 43

  3.3.2 基本转换 44

  3.圆坐两讨切比3.3 宽度、精度射跨只和千位分隔符 45

  3.3.4 符号、对齐和用0填充 46

  3.4 字符串方法 48

  3.4.1 center 48

  3.4.2 find 48

  3.4.3 join 49

  3.4.4 l你放身称混吃升月沙十预ower 50

  3.4.5 replace 51

  3.4.6 split 51

  3.4.7 strip 51

  3.4.8 translate 52

  3.4.9 判断字符串是否满足特定的条件 52

  3.5 小结 53

  3.5.1 本章介绍的新函数 53

  3.5.2 预告 53

  第4章 当索引行不通时 54

  4.1 字典的用途 54

  4.2 创建和使用字典 55

  4.2.1 函数dict 55

  4.2.2 基本的字典操作 55

  4.2.3 将字符串格式设置功能用于字典 57

  4.2.4 字典方法 58

  4.3 小结 63

  4.3.1 本章介绍的新函数 63

  4.3.2 预告 63

  第5章 条件、循环及殃项只其他语句 64

  5.1 再谈print和import 64

  5.1.1 打印多个参数 64

  5.1.2 导入时重命名 65

  5.2 赋值魔法 66

  5.2.1 序列解包 66

  5.2.2 链式赋值 67

  5.2.3 增强赋值 67

  5.3 代码块:缩进的舟端拒乐趣 68

  5.4 条件和条件语句 69

  5.4.1 这正是布尔值的用武之地 69

  5.4.2 有条件地执行和if语句 70

  5.4.3 else子句 70

  5.4.4 elif子句 71

  5.4.5 代码块嵌套 71

  5.4.6 更复杂的条件 71

  5.4.7 断言 75

  5.5 循环 76

  5.5.1 while循环 77

  5.5.2 for循环 77

  5.5.3 迭代字典 78

  5.5.4 一些迭代工具 78

  5.5.5 跳出循环 80

  5.5.6 循环中的else子句 82

  5.6 简单推导 83

  5.7 三人行 84

  5.7.1 什么都不做 84

  5.7.2 使用del删除 85

  5.7.3 使用exec和eval执行字符串及计算其结果 86

  5.8 小结 88

  5.8.1 本章介绍的新函数 89

  5.8.2 预告 89

  第6章 抽象 90

  6.1 懒惰是一种美德 90

  6.2 抽象和结构 91

  6.3 自定义函数 91

  6.3.1 给函数编写文档 92

  6.3.2 其实并不是函数的函数 93

  6.4 参数魔法 93

  6.4.1 值从哪里来 94

  6.4.2 我能修改参数吗 94

  6.4.3 关键字参数和默认值 98

  6.4.4 收集参数 100

  6.4.5 分配参数 102

  6.4.6 练习使用参数 103

  6.5 作用域 105

  6.6 递归 107

  6.6.1 两个经典案例:阶乘和幂 108

  6.6.2 另一个经典案例:二分查找 109

  6.7 小结 112

  6.7.1 本章介绍的新函数 113

  6.7.2 预告 113

  第7章 再谈抽象 114

  7.1 对象魔法 114

  7.1.1 多态 115

  7.1.2 多态和方法 116

  7.1.3 封装 118

  7.1.4 继承 119

  7.2 类 119

  7.2.1 类到底是什么 119

  7.2.2 创建自定义类 120

  7.2.3 属性、函数和方法 121

  7.2.4 再谈隐藏 122

  7.2.5 类的命名空间 123

  7.2.6 特定超类 124

  7.2.7 深入探讨继承 125

  7.2.8 多个超类 126

  7.2.9 接口和内省 127

  7.2.10 抽象基类 128

  7.3 关于面向对象设计的一些思考 130

  7.4 小结 130

  7.4.1 本章介绍的新函数 131

  7.4.2 预告 131

  第8章 异常 132

  8.1 异常是什么 132

  8.2 让事情沿你特定的轨道出错 132

  8.2.1 raise语句 132

  8.2.2 自定义的异常类 133

  8.3 捕获异常 134

  8.3.1 不用提供参数 134

  8.3.2 多个except子句 136

  8.3.3 一箭双雕 136

  8.3.4 捕获对象 137

  8.3.5 一网打尽 137

  8.3.6 万事大吉时 138

  8.4 异常和函数 140

  8.5 异常之禅 140

  8.6 不那么异常的情况 142

  8.7 小结 143

  8.7.1 本章介绍的新函数 143

  8.7.2 预告 143

  第9章 魔法方法、特性和迭代器 144

  9.1 如果你使用的不是Python 3 144

  9.2 构造函数 145

  9.2.1 重写普通方法和特殊的构造函数 146

  9.2.2 调用未关联的超类构造函数 147

  9.2.3 使用函数super 148

  9.3 元素访问 149

  9.3.1 基本的序列和映射协议 150

  9.3.2 从list、dict和str派生 152

  9.4 其他魔法方法 153

  9.5 特性 153

  9.5.1 函数property 154

  9.5.2 静态方法和类方法 155

  9.5.3 __getattr__、__setattr__等方法 156

  9.6 迭代器 157

  9.6.1 迭代器协议 157

  9.6.2 从迭代器创建序列 159

  9.7 生成器 159

  9.7.1 创建生成器 159

  9.7.2 递归式生成器 161

  9.7.3 通用生成器 162

  9.7.4 生成器的方法 162

  9.7.5 模拟生成器 163

  9.8 八皇后问题 164

  9.8.1 生成器的回溯 164

  9.8.2 问题 165

  9.8.3 状态表示 166

  9.8.4 检测冲突 166

  9.8.5 基线条件 166

  9.8.6 递归条件 167

  9.8.7 扫尾工作 169

  9.9 小结 170

  9.9.1 本章介绍的新函数 170

  9.9.2 预告 171

  第 10章 开箱即用 172

  10.1 模块 172

  10.1.1 模块是程序 172

  10.1.2 模块是用来下定义的 174

  10.1.3 让模块可用 176

  10.1.4 包 177

  10.2 探索模块 178

  10.2.1 模块包含什么 178

  10.2.2 使用help获取帮助 179

  10.2.3 文档 180

  10.2.4 使用源代码 181

  10.3 标准库:一些深受欢迎的模块 181

  10.3.1 sys 181

  10.3.2 os 183

  10.3.3 fileinput 185

  10.3.4 集合、堆和双端队列 186

  10.3.5 time 190

  10.3.6 random 192

  10.3.7 shelve和json 195

  10.3.8 re 198

  10.3.9 其他有趣的标准模块 210

  10.4 小结 211

  10.4.1 本章介绍的新函数 212

  10.4.2 预告 212

  第 11章 文件 213

  11.1 打开文件 213

  11.2 文件的基本方法 214

  11.2.1 读取和写入 215

  11.2.2 使用管道重定向输出 215

  11.2.3 读取和写入行 217

  11.2.4 关闭文件 217

  11.2.5 使用文件的基本方法 218

  11.3 迭代文件内容 220

  11.3.1 每次一个字符(或字节) 220

  11.3.2 每次一行 221

  11.3.3 读取所有内容 221

  11.3.4 使用fileinput实现延迟行迭代 221

  11.3.5 文件迭代器 222

  11.4 小结 223

  11.4.1 本章介绍的新函数 223

  11.4.2 预告 224

  第 12章 图形用户界面 225

  12.1 创建GUI示例应用程序 225

  12.1.1 初探 226

  12.1.2 布局 227

  12.1.3 事件处理 228

  12.2 使用其他GUI工具包 230

  12.3 小结 231

  第 13章 数据库支持 232

  13.1 Python数据库API 232

  13.1.1 全局变量 233

  13.1.2 异常 234

  13.1.3 连接和游标 234

  13.1.4 类型 236

  13.2 SQLite和PySQLite 236

  13.2.1 起步 237

  13.2.2 数据库应用程序示例 238

  13.3 小结 241

  13.3.1 本章介绍的新函数 241

  13.3.2 预告 241

  第 14章 网络编程 242

  14.1 几个网络模块 242

  14.1.1 模块socket 242

  14.1.2 模块urllib和urllib2 244

  14.1.3 其他模块 246

  14.2 SocketServer及相关的类 247

  14.3 多个连接 247

  14.3.1 使用SocketServer实现分叉和线程化 249

  14.3.2 使用select和poll实现异步I/O 249

  14.4 Twisted 252

  14.4.1 下载并安装Twisted 252

  14.4.2 编写Twisted服务器 253

  14.5 小结 254

  14.5.1 本章介绍的新函数 255

  14.5.2 预告 255

  第 15章 Python和Web 256

  15.1 屏幕抓取 256

  15.1.1 Tidy和XHTML解析 257

  15.1.2 Beautiful Soup 261

  15.2 使用CGI创建动态网页 262

  15.2.1 第 一步:准备Web服务器 262

  15.2.2 第 二步:添加!#行 263

  15.2.3 第三步:设置文件权限 264

  15.2.4 CGI安全风险 264

  15.2.5 简单的CGI脚本 264

  15.2.6 使用cgitb进行调试 265

  15.2.7 使用模块cgi 266

  15.2.8 简单的表单 267

  15.3 使用Web框架 269

  15.4 Web服务:更高-级的抓取 270

  15.4.1 RSS和相关内容 270

  15.4.2 使用XML-RPC进行远程过程调用 271

  15.4.3 SOAP 272

  15.5 小结 272

  15.5.1 本章介绍的新函数 272

  15.5.2 预告 272

  第 16章 测试基础 273

  16.1 先测试再编码 273

  16.1.1 准确的需求说明 273

  16.1.2 做好应对变化的准备 275

  16.1.3 测试四步曲 275

  16.2 测试工具 276

  16.2.1 doctest 276

  16.2.2 unittest 278

  16.3 超越单元测试 280

  16.3.1 使用PyChecker和PyLint检查源代码 280

  16.3.2 性能分析 283

  16.4 小结 284

  16.4.1 本章介绍的新函数 285

  16.4.2 预告 285

  第 17章 扩展Python 286

  17.1 鱼和熊掌兼得 286

  17.2 简单易行的方式:Jython和IronPython 287

  17.3 编写C语言扩展 289

  17.3.1 SWIG 291

  17.3.2 手工编写扩展 294

  17.4 小结 298

  17.4.1 本章介绍的新函数 299

  17.4.2 预告 299

  第 18章 程序打包 300

  18.1 Setuptools基础 300

  18.2 打包 302

  18.3 编译扩展 303

  18.4 使用py2exe创建可执行程序 304

  18.5 小结 304

  18.5.1 本章介绍的新函数 305

  18.5.2 预告 305

  第 19章 趣味编程 306

  19.1 为何要有趣 306

  19.2 编程柔术 306

  19.3 原型设计 307

  19.4 配置 308

  19.4.1 提取常量 308

  19.4.2 配置文件 309

  19.5 日志 311

  19.6 如果你已不胜其烦 312

  19.7 如果你想深入学习 312

  19.8 小结 313

  第 20章 项目1:自动添加标签 315

  20.1 问题描述 315

  20.2 有用的工具 316

  20.3 准备工作 316

  20.4 初次实现 317

  20.4.1 找出文本块 317

  20.4.2 添加一些标记 318

  20.5 再次实现 319

  20.5.1 处理程序 320

  20.5.2 处理程序的超类 320

  20.5.3 规则 322

  20.5.4 规则的超类 323

  20.5.5 过滤器 323

  20.5.6 解析器 323

  20.5.7 创建规则和过滤器 324

  20.5.8 整合起来 327

  20.6 进一步探索 331

  第 21章 项目2:绘制图表 332

  21.1 问题描述 332

  21.2 有用的工具 332

  21.3 准备工作 333

  21.4 初次实现 333

  21.4.1 使用ReportLab绘图 334

  21.4.2 绘制折线 335

  21.4.3 编写原型 335

  21.5 再次实现 337

  21.5.1 获取数据 337

  21.5.2 使用LinePlot类 337

  21.6 进一步探索 339

  第 22章 项目3:万-能的XML 340

  22.1 问题描述 340

  22.2 有用的工具 341

  22.3 准备工作 341

  22.4 初次实现 343

  22.4.1 创建简单的内容处理程序 343

  22.4.2 创建HTML页面 345

  22.5 再次实现 347

  22.5.1 分派器混合类 347

  22.5.2 将首部和尾部写入文件的方法以及默认处理程序 349

  22.5.3 支持 349

  22.5.4 事件处理程序 350

  22.6 进一步探索 352

  第 23章 项目4:新闻汇总 353

  23.1 问题描述 353

  23.2 有用的工具 354

  23.3 准备工作 354

  23.4 初次实现 354

  23.5 再次实现 356

  23.6 进一步探索 362

  第 24章 项目5:虚拟茶话会 364

  24.1 问题描述 364

  24.2 有用的工具 364

  24.3 准备工作 365

  24.4 初次实现 366

  24.4.1 ChatServer类 366

  24.4.2 ChatSession类 367

  24.4.3 整合起来 369

  24.5 再次实现 371

  24.5.1 基本的命令解释功能 371

  24.5.2 聊天室 372

  24.5.3 登录和退出聊天室 372

  24.5.4 主聊天室 373

  24.5.5 新的服务器 373

  24.6 进一步探索 378

  第 25章 项目6:使用CGI进行远程编辑 379

  25.1 问题描述 379

  25.2 有用的工具 379

  25.3 准备工作 380

  25.4 初次实现 380

  25.5 再次实现 381

  25.5.1 创建文件名表单 381

  25.5.2 编写编辑器脚本 382

  25.5.3 编写保存脚本 383

  25.5.4 运行编辑器 384

  25.6 进一步探索 386

  第 26章 项目7:自建公告板 387

  26.1 问题描述 387

  26.2 有用的工具 387

  26.3 准备工作 388

  26.4 初次实现 389

  26.5 再次实现 393

  26.5.1 编写脚本main.cgi 394

  26.5.2 编写脚本view.cgi 395

  26.5.3 编写脚本edit.cgi 396

  26.5.4 编写脚本save.cgi 398

  26.5.5 尝试使用 399

  26.6 进一步探索 400

  第 27章 项目8:使用XML-RPC共享文件 401

  27.1 问题描述 401

  27.2 有用的工具 402

  27.3 准备工作 403

  27.4 初次实现 403

  27.4.1 实现简单的节点 403

  27.4.2 尝试使用 408

  27.5 再次实现 409

  27.5.1 创建客户端界面 410

  27.5.2 引发异常 410

  27.5.3 验证文件名 411

  27.5.4 尝试使用 415

  27.6 进一步探索 415

  第 28章 项目9:使用GUI共享文件 417

  28.1 问题描述 417

  28.2 有用的工具 417

  28.3 准备工作 417

  28.4 初次实现 417

  28.5 再次实现 419

  28.6 进一步探索 422

  第 29章 项目10:自制街机游戏 423

  29.1 问题描述 423

  29.2 有用的工具 424

  29.2.1 pygame 424

  29.2.2 pygame.locals 424

  29.2.3 pygame.display 424

  29.2.4 pygame.font 425

  29.2.5 pygame.sprite 425

  29.2.6 pygame.mouse 425

  29.2.7 pygame.event 425

  29.2.8 pygame.image 426

  29.3 准备工作 426

  29.4 初次实现 426

  29.5 再次实现 429

  29.6 进一步探索 438

  附录A 简明教程 440

  附录B Python参考手册 447

  • Python基础教程(第3版)程序代码编写 ✍�【是否推荐阅读】:十分推荐 ❓【推荐理由】:这本书全面写出了该语言的详细步骤对初学者帮助很大 �【作者介绍】:芒努斯·利·海特兰德 �【图书风格】:教材 ❓【简要总结】:这本书主要写了以python语言为主,从安装到到编写程序代码从中包含了C 邱小悦i
  • Python基础教程(第3版)学习Python基础教程 ߒ�【是否推荐阅读】:推荐阅读 ❓【推荐理由】:我的第一本Python2教程(旧版),看了几本入门教程后回头再看Python3版本,觉得还有些晦涩的地方,这书不适合作为入门教程,作者对python已经融会贯通,站在整体层面上去写教程。 Hfit01
标签:
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com

评论留言

我要留言

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com