• PYTHON面向对象编程(第4版)
21年品牌 40万+商家 超1.5亿件商品

PYTHON面向对象编程(第4版)

全新正版 极速发货

124.83 6.6折 189 全新

库存8件

广东广州
认证卖家担保交易快速发货售后保障

作者(美)StevenF.Lott(史蒂文·洛特)(加)DustyPhillips(达斯帝·菲利普斯)

出版社电子工业出版社

ISBN9787121483240

出版时间2024-08

装帧平装

开本其他

定价189元

货号1203333760

上书时间2024-07-31

徐小智的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
目录
第1章  面向对象设计1
1.1  面向对象简介1
1.2  对象和类3
1.3  定义属性和行为6
1.3.1  用数据描述对象的状态6
1.3.2  行为就是动作9
1.4  隐藏细节并创建公共接口10
1.5  组合13
1.6  继承16
1.6.1  继承提供抽象19
1.6.2  多重继承19
1.7  案例学习21
1.7.1  简介和问题概述22
1.7.2  上下文视图24
1.7.3  逻辑视图27
1.7.4  过程视图29
1.7.5  开发视图31
1.7.6  物理视图33
1.7.7  结论34
1.8  回顾35
1.9  练习35
1.10  总结36
第2章  Python的对象37
2.1  类型提示37
2.2  创建Python的类43
2.2.1  添加属性44
2.2.2  让它做点什么45
2.2.3  初始化对象49
2.2.4  类型提示和默认值52
2.2.5  使用文档字符串53
2.3  模块和包56
2.3.1  组织模块59
2.3.2  组织模块内容63
2.4  谁可以访问我的数据68
2.5  第三方库69
2.6  案例学习72
2.6.1  逻辑视图72
2.6.2  样本和状态74
2.6.3  样本状态转换75
2.6.4  类的职责80
2.6.5  TrainingData类81
2.7  回顾85
2.8  练习85
2.9  总结86
第3章  当对象相似时87
3.1  基本继承88
3.1.1  扩展内置对象91
3.1.2  重写和super94
3.2  多重继承96
3.2.1  钻石型继承问题100
3.2.2  不同集合的参数107
3.3  多态110

3.4  案例学习114
3.4.1  逻辑视图115
3.4.2  另一种距离算法120
3.5  回顾122
3.6  练习122
3.7  总结123
第4章  异常捕获124
4.1  抛出异常125
4.1.1  抛出一个异常127
4.1.2  异常的作用129
4.1.3  处理异常131
4.1.4  异常的层级138
4.1.5  定义我们自己的异常139
4.1.6  异常并不是例外142
4.2  案例学习146
4.2.1  上下文视图147
4.2.2  过程视图148
4.2.3  什么可能出错149
4.2.4  错误的行为150
4.2.5  通过CSV文件创建样本151
4.2.6  验证枚举值155
4.2.7  读取CSV文件157
4.2.8  不要重复你自己159
4.3  回顾160
4.4  练习161
4.5  总结162
第5章  何时使用面向对象编程163
5.1  将对象看作对象163
5.2  通过属性向类数据添加行为170
5.2.1  属性的细节173
5.2.2  装饰器――另一种创建属性的方法176
5.2.3  决定何时使用属性177
5.3  管理器对象180
5.3.1  删除重复的代码186
5.3.2  实践188
5.4  案例学习192
5.4.1  输入验证192
5.4.2  输入分块195
5.4.3  样本的类层级196
5.4.4  purpose枚举类198
5.4.5  Property setters201
5.4.6  重复的if语句201
5.5  回顾202
5.6  练习202
5.7  总结203
第6章  抽象基类和运算符重载204
6.1  创建抽象基类206
6.1.1  collections模块中的抽象基类208
6.1.2  抽象基类和类型提示211
6.1.3  collections.abc模块212
6.1.4  创建自己的抽象基类219
6.1.5  揭开魔法的神秘面纱224
6.2  运算符重载225
6.3  扩展内置类232
6.4  元类235
6.5  案例学习241
6.5.1  用两个子列表扩展list类241
6.5.2  分割的洗牌策略244
6.5.3  分割的增量策略246
6.6  回顾249
6.7  练习250
6.8  总结251
第7章  Python的数据结构252
7.1  空对象252
7.2  元组和命名元组254
使用typing.NamedTuple的命名元组257
7.3  数据类260
7.4  字典264
7.4.1  字典的用例270
7.4.2  使用defaultdict271
7.5  列表275
列表排序278
7.6  集合285
7.7  3种队列289
7.8  案例学习293
7.8.1  逻辑模型294
7.8.2  冻结的数据类297
7.8.3  NamedTuple类300
7.8.4  结论303
7.9  回顾304
7.10  练习304
7.11  总结306
第8章  面向对象编程和函数式编程307
8.1  Python的内置函数307
8.1.1  len()函数308
8.1.2  reversed()函数309
8.1.3  enumerate()函数310
8.2  方法重载的另一种方式312
8.2.1  参数的默认值314
8.2.2  可变参数列表319
8.2.3  参数解包326
8.3  函数也是对象328
8.3.1  函数对象和回调函数330
8.3.2  用函数给类打补丁336
8.3.3  可调用对象338
8.4  文件I/O340
把它放在上下文中343
8.5  案例学习348
8.5.1  处理概述348
8.5.2  分割数据350
8.5.3  重新思考分类351
8.5.4  partition()函数354
8.5.5  一次性分割355
8.6  回顾358
8.7  练习359
8.8  总结360
第9章  字符串、序列化和文件路径361
9.1  字符串362
9.1.1  字符串操作363
9.1.2  字符串格式化366
9.1.3  字符串是Unicode377
9.2  正则表达式383
9.2.1  模式匹配385
9.2.2  用正则表达式解析信息394
9.3  文件系统路径398
9.4  序列化对象402
9.4.1  定制pickle405
9.4.2  用JSON序列化对象408
9.5  案例学习411
9.5.1  CSV格式设计412
9.5.2  CSV字典阅读器413
9.5.3  CSV列表阅读器416
9.5.4  JSON序列化418
9.5.5  用换行符分隔的JSON420
9.5.6  JSON验证421
9.6  回顾424
9.7  练习424
9.8  总结426
第10章  迭代器模式427
10.1  设计模式简介427
10.2  迭代器428
迭代器协议429
10.3  推导式432
10.3.1  列表推导式432
10.3.2  集合和字典推导式435
10.3.3  生成器表达式436
10.4  生成器函数439
10.4.1  通过另一个可迭代对象产生元素444
10.4.2  生成器堆栈446
10.5  案例学习450
10.5.1  相关集合知识451
10.5.2  多分区452
10.5.3  测试457
10.5.4  基本的KNN算法459
10.5.5  使用bisect模块的KNN460
10.5.6  使用headq模块的KNN462
10.5.7  结论462
10.6  回顾465
10.7  练习465
10.8  总结467
第11章  通用设计模式468
11.1  装饰器模式469
11.1.1  装饰器模式示例470
11.1.2  Python中的装饰器478
11.2  观察者模式482
观察者模式示例483
11.3  策略模式487
11.3.1  策略模式示例488
11.3.2  Python中的策略模式492
11.4  命令模式493
命令模式示例494
11.5  状态模式499
11.5.1  状态模式示例500
11.5.2  状态模式与策略模式508
11.6  单例模式509
单例模式的实现510
11.7  案例学习515
11.8  回顾524
11.9  练习525
11.10  总结526
第12章  高级设计模式527
12.1  适配器模式527
适配器模式示例529
12.2  外观模式533
外观模式示例534
12.3  享元模式538
12.3.1  Python中的享元模式示例540
12.3.2  包含多条消息的缓冲区547
12.3.3  使用Python的__slots__优化内存549
12.4  抽象工厂模式551
12.4.1  抽象工厂模式示例552
12.4.2  Python中的抽象工厂模式558
12.5  组合模式559
组合模式示例561
12.6  模板模式567
模板模式示例568
12.7  案例学习574
12.8  回顾577
12.9  练习577
12.10  总结579
第13章  测试面向对象的程序580
13.1  为什么要测试580
13.1.1  测试驱动开发582
13.1.2  测试目标583
13.1.3  测试模式584
13.2  使用unittest进行单元测试586
13.3  使用pytest进行单元测试588
13.3.1  pytest的设置和清理函数591
13.3.2  pytest用于设置和清理的fixture594
13.3.3  更高阶的fixture599
13.3.4  用pytest跳过测试606
13.4  使用Mock模拟对象608
13.4.1  其他打补丁技术612
13.4.2  sentinal对象615
13.5  进行多少测试才是足够的617
13.6  开发和测试621
13.7  案例学习622
13.7.1  距离算法类的单元测试623
13.7.2  Hyperparameter类的单元测试629
13.8  回顾633
13.9  练习634
13.10  总结636
第14章  并发637
并发处理的背景638
14.1  线程640
线程的许多问题642
14.2  多进程644
14.2.1  多进程池647
14.2.2  队列651
14.2.3  多进程的问题656
14.3  future657
14.4  AsyncIO662
14.4.1  AsyncIO实战663
14.4.2  读取AsyncIO future665
14.4.3  网络AsyncIO666
14.4.4  日志编写演示674
14.4.5  AsyncIO客户端677
14.5  哲学家用餐问题681
14.6  案例学习685
14.7  回顾690
14.8  练习690
14.9  总结692

内容摘要
这是一本全面介绍Python面向对象编程的图书。本书共分为4部分。第1章至第6章深入讲解了面向对象编程的核心原则和概念,以及它们在Python中的实现方式。第7章至第9章仔细探讨了Python的数据结构、内置类和方法等,以及如何从面向对象编程的角度进行分析和应用。第10章至第12章探讨了设计模式及其在Python中的实现。第13章和第14章涵盖了测试和并发两个重要主题。整本书以一个机器学习分类算法的实现案例贯穿始终,并不断探讨各种实现方式的优劣。 这是一本全面介绍Python面向对象编程的图书。本书共分为4部分。第1章至第6章深入讲解了面向对象编程的核心原则和概念,以及它们在Python中的实现方式。第7章至第9章仔细探讨了Python的数据结构、内置类和方法等,以及如何从面向对象编程的角度进行分析和应用。第10章至第12章探讨了设计模式及其在Python中的实现。第13章和第14章涵盖了测试和并发两个重要主题。整本书以一个机器学习分类算法的实现案例贯穿始终,并不断探讨各种实现方式的优劣。 本书针对的是Python面向对象编程的新手,假设读者具备基本的Python技能。对于有其他面向对象编程语言背景的读者,本书将展示Python的许多特性。

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP