图书介绍

Python核心编程 第3版PDF|Epub|txt|kindle电子书版本下载

Python核心编程 第3版
  • (美)卫斯理 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115414779
  • 出版时间:2016
  • 标注页数:635页
  • 文件大小:92MB
  • 文件页数:660页
  • 主题词:软件工具-程序设计

PDF下载


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

下载说明

Python核心编程 第3版PDF格式电子书版下载

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

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

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

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

图书目录

第1部分 通用应用主题2

第1章 正则表达式2

1.1 简介/动机3

1.2 特殊符号和字符5

1.2.1 使用择一匹配符号匹配多个正则表达式模式6

1.2.2 匹配任意单个字符6

1.2.3 从字符串起始或者结尾或者单词边界匹配7

1.2.4 创建字符集8

1.2.5 限定范围和否定8

1.2.6 使用闭包操作符实现存在性和频数匹配9

1.2.7 表示字符集的特殊字符10

1.2.8 使用圆括号指定分组10

1.2.9 扩展表示法11

1.3 正则表达式和Python语言11

1.3.1 re模块:核心函数和方法12

1.3.2 使用compile()函数编译正则表达式13

1.3.3 匹配对象以及group()和groups()方法14

1.3.4 使用match()方法匹配字符串14

1.3.5 使用search()在一个字符串中查找模式(搜索与匹配的对比)15

1.3.6 匹配多个字符串16

1.3.7 匹配任何单个字符(.)16

1.3.8 创建字符集([])17

1.3.9 重复、特殊字符以及分组18

1.3.10 匹配字符串的起始和结尾以及单词边界20

1.3.11 使用findall()和finditer()查找每一次出现的位置21

1.3.12 使用sub()和subn()搜索与替换22

1.3.13 在限定模式上使用split()分隔字符串23

1.3.14 扩展符号24

1.3.15 杂项27

1.4 一些正则表达式示例28

1.5 更长的正则表达式示例33

1.5.1 匹配字符串35

1.5.2 搜索与匹配……还有贪婪37

1.6 练习39

第2章 网络编程42

2.1 简介43

2.2 客户端/服务器架构43

2.2.1 硬件客户端/服务器架构43

2.2.2 软件客户端/服务器架构44

2.2.3 银行出纳员作为服务器吗44

2.2.4 客户端/服务器网络编程45

2.3 套接字:通信端点46

2.3.1 套接字46

2.3.2 套接字地址:主机-端口对47

2.3.3 面向连接的套接字与无连接的套接字47

2.4 Python中的网络编程48

2.4.1 socket()模块函数49

2.4.2 套接字对象(内置)方法49

2.4.3 创建TCP服务器51

2.4.4 创建TCP客户端54

2.4.5 执行TCP服务器和客户端56

2.4.6 创建UDP服务器58

2.4.7 创建UDP客户端59

2.4.8 执行UDP服务器和客户端60

2.4.9 socket模块属性61

2.5 SocketServer模块62

2.5.1 创建SocketServer TCP服务器63

2.5.2 创建SocketServer TCP客户端64

2.5.3 执行TCP服务器和客户端65

2.6 Twisted框架介绍66

2.6.1 创建Twisted Reactor TCP服务器66

2.6.2 创建Twisted Reactor TCP客户端67

2.6.3 执行TCP服务器和客户端69

2.7 相关模块69

2.8 练习70

第3章 因特网客户端编程74

3.1 因特网客户端简介75

3.2 文件传输75

3.2.1 文件传输因特网协议75

3.2.2 文件传输协议76

3.2.3 Python和FTP77

3.2.4 ftplib.FTP类的方法77

3.2.5 交互式FTP示例78

3.2.6 客户端FTP程序示例79

3.2.7 FTP的其他内容80

3.3 网络新闻81

3.3.1 Usenet与新闻组81

3.3.2 网络新闻传输协议82

3.3.3 Python和NNTP83

3.3.4 nntplib.NNTP类方法83

3.3.5 交互式NNTP示例84

3.3.6 客户端程序NNTP示例85

3.3.7 NNTP的其他内容89

3.4 电子邮件90

3.4.1 电子邮件系统组件和协议90

3.4.2 发送电子邮件91

3.4.3 Python和SMTP92

3.4.4 smtplib.SMTP类方法92

3.4.5 交互式SMTP示例93

3.4.6 SMTP的其他内容94

3.4.7 接收电子邮件94

3.4.8 POP和IMAP95

3.4.9 Python和POP395

3.4.10 交互式POP3示例96

3.4.11 poplib.POP3类方法97

3.4.12 客户端程序SMTP和POP3示例98

3.4.13 Python和IMAP4100

3.4.14 交互式IMAP4示例100

3.4.15 imaplib.IMAP4类中的常用方法101

3.5 实战102

3.5.1 生成电子邮件102

3.5.2 解析电子邮件104

3.5.3 基于Web的云电子邮件服务105

3.5.4 最佳实践:安全、重构106

3.5.5 Yahoo!Mail108

3.5.6 Gmail112

3.6 相关模块115

3.6.1 电子邮件115

3.6.2 其他因特网客户端协议115

3.7 练习116

第4章 多线程编程122

4.1 简介/动机123

4.2 线程和进程124

4.2.1 进程124

4.2.2 线程124

4.3 线程和Python125

4.3.1 全局解释器锁125

4.3.2 退出线程126

4.3.3 在Python中使用线程126

4.3.4 不使用线程的情况126

4.3.5 Python的threading模块128

4.4 thread模块128

4.5 threading模块132

4.5.1 Thread类133

4.5.2 threading模块的其他函数139

4.6 单线程和多线程执行对比140

4.7 多线程实践142

4.7.1 图书排名示例142

4.7.2 同步原语149

4.7.3 锁示例149

4.7.4 信号量示例156

4.8 生产者-消费者问题和Queue/queue模块159

4.9 线程的替代方案162

4.9.1 subprocess模块163

4.9.2 multiprocessing模块163

4.9.3 concurrent.futures模块163

4.10 相关模块165

4.11 练习165

第5章 GUI编程168

5.1 简介169

5.1.1 Tcl、Tk和Tkinter169

5.1.2 安装和使用Tkinter170

5.1.3 客户端/服务端架构170

5.2 Tkinter和Python编程170

5.2.1 Tkinter模块:添加Tk到应用中171

5.2.2 GUI编程介绍171

5.2.3 顶层窗口:Tkinter.Tk()173

5.2.4 Tk控件173

5.3 Tkinter示例174

5.3.1 Label控件174

5.3.2 Button控件175

5.3.3 Label和Button控件175

5.3.4 Label、Button和Scale控件176

5.3.5 偏函数应用示例178

5.3.6 中级Tkinter示例180

5.4 其他GUI简介185

5.4.1 Tk接口扩展(Tix)187

5.4.2 Python MegaWidgets(PMW)188

5.4.3 wxWidgets和wxPython188

5.4.4 GTK+和PyGTK190

5.4.5 Tile/Ttk192

5.5 相关模块和其他GUI194

5.6 练习196

第6章 数据库编程198

6.1 简介199

6.1.1 持久化存储199

6.1.2 数据库基本操作和SQL199

6.1.3 数据库和Python201

6.2 Python的DB-API203

6.2.1 模块属性203

6.2.2 Connection对象205

6.2.3 Cursor对象206

6.2.4 类型对象和构造函数207

6.2.5 关系数据库209

6.2.6 数据库和Python:适配器210

6.2.7 使用数据库适配器的示例210

6.2.8 数据库适配器示例应用215

6.3 ORM226

6.3.1 考虑对象,而不是SQL227

6.3.2 Python和ORM227

6.3.3 员工角色数据库示例228

6.3.4 SQLAlchemy229

6.3.5 SQLObject240

6.4 非关系数据库245

6.4.1 NoSQL介绍245

6.4.2 MongoDB246

6.4.3 PyMongo:MongoDB和Python246

6.4.4 总结250

6.5 相关文献250

6.6 练习252

第7章 Microsoft Office编程256

7.1 简介257

7.2 使用Python进行COM客户端编程257

7.2.1 客户端COM编程258

7.2.2 入门258

7.3 入门示例259

7.3.1 Excel259

7.3.2 Word261

7.3.3 PowerPoint262

7.3.4 Outlook264

7.4 中级示例266

7.4.1 Excel266

7.4.2 Outlook268

7.4.3 PowerPoint273

7.4.4 总结280

7.5 相关模块/包281

7.6 练习281

第8章 扩展Python286

8.1 简介和动机287

8.1.1 Python扩展简介287

8.1.2 什么情况下需要扩展Python288

8.1.3 什么情况下不应该扩展Python288

8.2 编写Python扩展289

8.2.1 创建应用代码289

8.2.2 根据样板编写封装代码291

8.2.3 编译296

8.2.4 导入并测试297

8.2.5 引用计数300

8.2.6 线程和全局解释器锁301

8.3 相关主题302

8.3.1 SWIG302

8.3.2 Pyrex302

8.3.3 Cython302

8.3.4 Psyco303

8.3.5 PyPy303

8.3.6 嵌入Python304

8.4 练习304

第2部分 Web开发306

第9章 Web客户端和服务器306

9.1 简介307

9.1.1 Web应用:客户端/服务器计算307

9.1.2 因特网308

9.2 Python Web客户端工具310

9.2.1 统一资源定位符310

9.2.2 urlparse模块312

9.2.3 urllib模块/包313

9.2.4 使用urllib2HTTP验证的示例317

9.2.5 将HTTP验证示例移植到Python3中319

9.3 Web客户端322

9.3.1 一个简单的Web爬虫/蜘蛛/机器人322

9.3.2 解析Web页面328

9.3.3 可编程的Web浏览333

9.4 Web(HTTP)服务器336

9.5 相关模块339

9.6 练习341

第10章 Web编程:CGI和WSGI345

10.1 简介346

10.2 帮助Web服务器处理客户端数据346

10.2.1 CGI简介346

10.2.2 CGI应用程序347

10.2.3 cgi模块348

10.2.4 cgitb模块348

10.3 构建CGI应用程序349

10.3.1 构建Web服务器349

10.3.2 建立表单页351

10.3.3 生成结果页面352

10.3.4 生成表单和结果页面353

10.3.5 全面交互的Web站点357

10.4 在CGI中使用Unicode362

10.5 高级CGI364

10.5.1 mulitipart表单提交和文件上传364

10.5.2 多值字段364

10.5.3 cookie365

10.5.4 cookie和文件上传365

10.6 WSGI简介373

10.6.1 动机(替代CGI)373

10.6.2 服务器集成374

10.6.3 外部进程374

10.6.4 WSGI简介375

10.6.5 WSGI服务器376

10.6.6 参考服务器377

10.6.7 WSGI应用示例378

10.6.8 中间件及封装WSGI应用378

10.6.9 在Python 3中使用WSGI379

10.7 现实世界中的Web开发380

10.8 相关模块380

10.9 练习381

第11章 Web框架:Django384

11.1 简介385

11.2 Web框架385

11.3 Django简介386

11.4 项目和应用390

11.4.1 在Django中创建项目390

11.4.2 运行开发服务器393

11.5 “HelloWorld”应用(一个博客)394

11.6 创建模型来添加数据库服务396

11.6.1 设置数据库396

11.6.2 创建表398

11.7 Python应用shell400

11.7.1 在Django中使用Python shell400

11.7.2 测试数据模型402

11.8 Django管理应用403

11.8.1 设置admin403

11.8.2 使用admin404

11.9 创建博客的用户界面410

11.9.1 创建模板411

11.9.2 创建URL模式412

11.9.3 创建视图函数415

11.10 改进输出418

11.11 处理用户输入422

11.11.1 模板:添加HTML表单423

11.11.2 添加URLconf项423

11.11.3 视图:处理用户输入423

11.11.4 跨站点请求伪造424

11.12 表单和模型表单426

11.12.1 Django表单简介426

11.12.2 模型表单示例427

11.12.3 使用ModelForm来生成HTML表单427

11.12.4 处理ModelForm数据428

11.13 视图进阶429

11.14 改善外观431

11.15 单元测试432

11.15.1 blog应用的代码审查434

11.15.2 blog应用总结439

11.16 中级Django应用:TweetApprover439

11.16.1 创建项目文件结构440

11.16.2 安装Twython库445

11.16.3 URL结构446

11.16.4 数据模型449

11.16.5 提交新推文以便审核453

11.16.6 审核推文457

11.17 资源465

11.18 总结465

11.19 练习466

第12章 云计算:GoogleApp Engine470

12.1 简介471

12.2 云计算471

12.2.1 云计算服务的层次472

12.2.2 App Engine473

12.3 沙盒和App Engine SDK476

12.4 选择一个App Engine框架479

12.5 Python 2.7 支持485

12.5.1 一般差异486

12.5.2 代码中的差异486

12.6 与Django比较487

12.6.1 开始“Hello World”487

12.6.2 手动创建“Hello World”(Zip文件用户)488

12.7 将“Hello World”改成一个简单的博客489

12.7.1 快速发现改动:30秒内将纯文本转成HTML489

12.7.2 添加表单490

12.7.3 添加Datastore服务492

12.7.4 迭代改进496

12.7.5 开发/SDK控制台496

12.8 添加Memcache服务502

12.9 静态文件505

12.10 添加用户服务505

12.10.1 Google账号验证506

12.10.2 联合验证507

12.11 远程APl shell507

12.12 问与答(Python实现)509

12.12.1 发送电子邮件509

12.12.2 接收电子邮件510

12.13 使用XMPP发送即时消息512

12.14 处理图片514

12.15 任务队列(非定期任务)514

12.15.1 创建任务515

12.15.2 配置app.yaml515

12.15.3 其他任务创建选项516

12.15.4 将发送电子邮件作为任务517

12.15.5 deferred包519

12.16 使用Appstats进行分析520

12.16.1 在app.yaml中添加标准处理程序521

12.16.2 添加自定义Admin Console页面521

12.16.3 作为内置界面启用界面521

12.17 URLfetch服务522

12.18 问与答(无Python实现)522

12.18.1 Cron服务(计划任务作业)523

12.18.2 预热请求523

12.18.3 DoS保护524

12.19 厂商锁定524

12.20 资源525

12.21 总结526

12.22 练习527

第13章 Web服务530

13.1 简介531

13.2 Yahoo!金融股票报价服务器531

13.3 Twitter微博534

13.3.1 社交网络534

13.3.2 Twitter和Python535

13.3.3 稍微长一点的API组合应用示例537

13.3.4 总结547

13.3.5 额外在线资源548

13.4 练习548

第3部分 补充/实验章节553

第14章 文本处理553

14.1 逗号分隔值(CSV)554

14.1.1 CSV简介554

14.1.2 再论股票投资组合示例556

14.2 JSON557

14.3 可扩展标记语言561

14.3.1 XML简介562

14.3.2 Python和XML562

14.3.3 XML实战566

14.3.4 使用XML-RPC的客户端-服务器服务569

14.4 参考文献573

14.5 相关模块574

14.6 练习574

第15章 其他内容577

15.1 Jython578

15.1.1 Jython简介578

15.1.2 Swing GUI开发示例579

15.2 Google+581

15.2.1 Google+平台简介582

15.2.2 Python和Google+API582

15.2.3 一个简单的社交媒体分析工具582

15.3 练习590

附录A 部分练习参考答案593

附录B 参考表597

B.1 Python关键字597

B.2 Python标准操作符和函数598

B.3 数值类型操作符和函数599

B.4 序列类型操作符和函数600

B.5 字符串格式化操作符转换符号602

B.6 字符串格式化操作符指令603

B.7 字符串类型内置方法603

B.8 列表类型内置方法605

B.9 字典类型内置方法605

B.10 集合类型操作符和内置函数606

B.11 文件对象方法和数据属性607

B.12 Python异常608

B.13 类的特殊方法610

B.14 Python操作符汇总612

附录C Python 3:一种编程语言进化的产物614

C.1 为何Python在变化614

C.2 都发生了哪些变化615

C.2.1 print变成了print()615

C.2.2 字符串:默认为Unicode编码616

C.2.3 单类类型616

C.2.4 更新异常的语法617

C.2.5 整数的更新618

C.2.6 迭代器无处不在619

C.3 迁移工具619

C.3.1 2to3工具619

C.3.2 Python 2.6+620

C.4 结论620

C.5 参考资料620

附录D 利用Python 2.6+向Python 3迁移622

D.1 Python 3:Python的下一代622

D.2 整数623

D.2.1 单整数类型624

D.2.2 新型二进制和改进的八进制字符624

D.2.3 经典除法或真除法625

D.3 内置函数626

D.3.1 print语句或print()函数626

D.3.2 reduce()转移到了functools模块中627

D.3.3 其他更新627

D.4 面向对象编程:两种不同的类对象628

D.5 字符串629

D.6 异常630

D.6.1 处理异常(使用as)630

D.6.2 抛出异常630

D.7 其他转换工具和技巧631

D.8 编写兼容版本2.x和3.x的代码632

D.8.1 对比print和print()632

D.8.2 将你的方法导入解决方案中633

D.8.3 整合在一起634

D.9 结论635

热门推荐