友情提示:本文共有 7354 个字,阅读大概需要 15 分钟。
内容简介
《Python核心编程(第3版)》是经典畅销图书《Python核心编程(第二版)》的全新升级版本,总共分为3部分。第1部分为讲解了Python的一些通用应用,包括正则表达式、网络编程、Internet客户端编程、多线程编程、GUI编程、数据库编程、Microsoft Office编程、扩展Python等内容。第2部分讲解了与Web开发相关的主题,包括Web客户端和服务器、CGI和WSGI相关的Web编程、Django Web框架、云计算、高级Web服务。第3部分则为一个补充/实验章节,包括文本处理以及一些其他内容。 《Python核心编程(第3版)》适合具有一定经验的Python开发人员阅读。
获取方法
私信回复【软件测试】就可以免费领取了
目录
第1部分 通用应用主题
第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.1re模块:核心函数和方法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.4Python中的网络编程48
2.4.1socket()模块函数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.9socket模块属性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.3Python和FTP77
3.2.4ftplib.FTP类的方法77
3.2.5交互式FTP示例78
3.2.6客户端FTP程序示例79
3.2.7FTP的其他内容80
3.3网络新闻81
3.3.1Usenet与新闻组81
3.3.2网络新闻传输协议82
3.3.3Python和NNTP83
3.3.4nntplib.NNTP类方法83
3.3.5交互式NNTP示例84
3.3.6客户端程序NNTP示例85
3.3.7NNTP的其他内容89
3.4电子邮件90
3.4.1电子邮件系统组件和协议90
3.4.2发送电子邮件91
3.4.3Python和SMTP92
3.4.4smtplib.SMTP类方法92
3.4.5交互式SMTP示例93
3.4.6SMTP的其他内容94
3.4.7接收电子邮件94
3.4.8POP和IMAP95
3.4.9Python和POP395
3.4.10交互式POP3示例96
3.4.11poplib.POP3类方法97
3.4.12客户端程序SMTP和POP3示例98
3.4.13Python和IMAP4100
3.4.14交互式IMAP4示例100
3.4.15imaplib.IMAP4类中的常用方法101
3.5实战102
3.5.1生成电子邮件102
3.5.2解析电子邮件104
3.5.3基于Web的云电子邮件服务105
3.5.4实践:安全、重构106
3.5.5Yahoo! Mail108
3.5.6Gmail112
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.5Python的threading模块128
4.4thread模块128
4.5threading模块132
4.5.1Thread类133
4.5.2threading模块的其他函数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.1subprocess模块163
4.9.2multiprocessing模块163
4.9.3concurrent.futures模块163
4.10相关模块165
4.11练习165
第5章GUI编程168
5.1简介169
5.1.1Tcl、Tk和Tkinter169
5.1.2安装和使用Tkinter170
5.1.3客户端/服务端架构170
5.2Tkinter和Python编程170
5.2.1Tkinter模块:添加Tk到应用中171
5.2.2GUI编程介绍171
5.2.3顶层窗口:Tkinter.Tk()173
5.2.4Tk控件173
5.3Tkinter示例174
5.3.1Label控件174
5.3.2Button控件175
5.3.3Label和Button控件175
5.3.4Label、Button和Scale控件176
5.3.5偏函数应用示例178
5.3.6中级Tkinter示例180
5.4其他GUI简介185
5.4.1Tk接口扩展(Tix)187
5.4.2Python MegaWidgets(PMW)188
5.4.3wxWidgets和wxPython188
5.4.4GTK 和PyGTK190
5.4.5Tile/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.2Python的DB-API203
6.2.1模块属性203
6.2.2Connection对象205
6.2.3Cursor对象206
6.2.4类型对象和构造函数207
6.2.5关系数据库209
6.2.6数据库和Python:适配器210
6.2.7使用数据库适配器的示例210
6.2.8数据库适配器示例应用215
6.3ORM226
6.3.1考虑对象,而不是SQL227
6.3.2Python和ORM227
6.3.3员工角色数据库示例228
6.3.4SQLAlchemy229
6.3.5SQLObject240
6.4非关系数据库245
6.4.1NoSQL介绍245
6.4.2MongoDB246
6.4.3PyMongo: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.1Excel259
7.3.2Word261
7.3.3PowerPoint262
7.3.4Outlook264
7.4中级示例266
7.4.1Excel266
7.4.2Outlook268
7.4.3PowerPoint273
7.4.4总结280
7.5相关模块/包281
7.6练习281
第8章扩展Python286
8.1简介和动机287
8.1.1Python扩展简介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.1SWIG302
8.3.2Pyrex302
8.3.3Cython302
8.3.4Psyco303
8.3.5PyPy303
8.3.6嵌入Python304
8.4练习304
第2部分Web开发
第9章Web客户端和服务器306
9.1简介307
9.1.1Web应用:客户端/服务器计算307
9.1.2因特网308
9.2Python Web客户端工具310
9.2.1统一资源定位符310
9.2.2urlparse模块312
9.2.3urllib模块/包313
9.2.4使用urllib2 HTTP验证的示例317
9.2.5将HTTP验证示例移植到Python 3中319
9.3Web客户端322
9.3.1一个简单的Web爬虫/蜘蛛/机器人322
9.3.2解析Web页面328
9.3.3可编程的Web浏览333
9.4Web(HTTP)服务器336
9.5相关模块339
9.6练习341
第10章Web编程:CGI和WSGI345
10.1简介346
10.2帮助Web服务器处理客户端数据346
10.2.1CGI简介346
10.2.2CGI应用程序347
10.2.3cgi模块348
10.2.4cgitb模块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.1mulitipart表单提交和文件上传364
10.5.2多值字段364
10.5.3cookie365
10.5.4cookie和文件上传365
10.6WSGI简介373
10.6.1动机(替代CGI)373
10.6.2服务器集成374
10.6.3外部进程374
10.6.4WSGI简介375
10.6.5WSGI服务器376
10.6.6参考服务器377
10.6.7WSGI应用示例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.2Web框架385
11.3Django简介386
11.4项目和应用390
11.4.1在Django中创建项目390
11.4.2运行开发服务器393
11.5“Hello World”应用(一个博客)394
11.6创建模型来添加数据库服务396
11.6.1设置数据库396
11.6.2创建表398
11.7Python 应用shell400
11.7.1在Django中使用Python shell400
11.7.2测试数据模型402
11.8Django管理应用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.1Django表单简介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.1blog应用的代码审查434
11.15.2blog应用总结439
11.16*中级Django应用:TweetApprover439
11.16.1创建项目文件结构440
11.16.2安装Twython库445
11.16.3URL结构446
11.16.4数据模型449
11.16.5提交新推文以便审核453
11.16.6审核推文457
11.17资源465
11.18总结465
11.19练习466
第12章云计算:Google App Engine470
12.1简介471
12.2云计算471
12.2.1云计算服务的层次472
12.2.2App Engine473
12.3沙盒和App Engine SDK476
12.4选择一个App Engine框架479
12.5Python 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.1Google账号验证506
12.10.2联合验证507
12.11远程API 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.5deferred包519
12.16使用Appstats进行分析520
12.16.1在app.yaml中添加标准处理程序521
12.16.2添加自定义Admin Console页面521
12.16.3作为内置界面启用界面521
12.17URLfetch服务522
12.18问与答(无Python实现)522
12.18.1Cron服务(计划任务作业)523
12.18.2预热请求523
12.18.3DoS保护524
12.19厂商锁定524
12.20资源525
12.21总结526
12.22练习527
第13章Web服务530
13.1简介531
13.2Yahoo!金融股票报价服务器531
13.3Twitter微博534
13.3.1社交网络534
13.3.2Twitter和Python535
13.3.3稍微长一点的API组合应用示例537
13.3.4总结547
13.3.5额外在线资源548
13.4练习548
第3部分补充/实验章节
第14章文本处理553
14.1逗号分隔值(CSV)554
14.1.1CSV简介554
14.1.2再论股票投资组合示例556
14.2JSON557
14.3可扩展标记语言561
14.3.1XML简介562
14.3.2Python和XML562
14.3.3XML实战566
14.3.4*使用XML-RPC的客户端-服务器服务569
14.4参考文献573
14.5相关模块574
14.6练习574
第15章其他内容577
15.1Jython578
15.1.1Jython简介578
15.1.2Swing GUI开发示例579
15.2Google 581
15.2.1Google 平台简介582
15.2.2Python和Google API582
15.2.3一个简单的社交媒体分析工具582
15.3练习590
内容截图
总结
软件测试属于经验积累型职业,想要自己越老越值钱,那么就要不断的学习,不断的完善自己,另外,青春饭一般是因为你的职业发展停滞不前导致,如果一个测试员,干了10年还是测试员,那只能怪他自己,但是反过来讲,任何一个行业,除非国企事业单位公务员,相对稳定一些,否则任何一个行业如果你是干了很久都是小喽啰,那也都是青春饭,老板当然会考虑你做了那么久为什么一点进步都没有呢?IT这行也是如此,所以说,不断学习,不断提升自己,才是不会被淘汰的真理。电子档关注小编+私信【软件测试】即可获取。
本文如果对你有帮助,请点赞收藏《每日一书:《Python核心编程 第3版 中文版》PDF高清版》,同时在此感谢原作者。