python面向对象编程(第4版) 编程语言 (美)stevenf.lott(史蒂文·洛特)(加)dustyphilli(达斯帝·斯) 新华正版
¥
80
4.2折
¥
189
九五品
仅1件
作者[美]stevenf.lott(史蒂文·洛特)(加)dustyphilli(达斯帝·斯)
出版社电子工业出版社
出版时间2018-10
版次1
印刷时间2024-08
装帧平装
上书时间2024-08-31
商品详情
- 品相描述:九五品
图书标准信息
-
作者
[美]stevenf.lott(史蒂文·洛特)(加)dustyphilli(达斯帝·斯)
-
出版社
电子工业出版社
-
出版时间
2018-10
-
版次
1
-
ISBN
9787121483240
-
定价
189.00元
-
装帧
平装
-
开本
16开
-
页数
716页
- 【内容简介】
-
这是一本全面介绍python面向对象编程的图书。本书共分为4部分。章至第6章深入讲解了面向对象编程的核心原则和概念,以及它们在python中的实现方式。第7章至第9章仔细探讨了python的数据结构、内置类和方法等,以及如何从面向对象编程的角度进行分析和应用。0章至2章探讨了设计模式及其在python中的实现。3章和4章涵盖了测试和并发两个重要主题。整本书以一个机器学分类算法的实现案例贯穿始终,并不断探讨各种实现方式的优劣。 这是一本全面介绍python面向对象编程的图书。本书共分为4部分。章至第6章深入讲解了面向对象编程的核心原则和概念,以及它们在python中的实现方式。第7章至第9章仔细探讨了python的数据结构、内置类和方法等,以及如何从面向对象编程的角度进行分析和应用。0章至2章探讨了设计模式及其在python中的实现。3章和4章涵盖了测试和并发两个重要主题。整本书以一个机器学分类算法的实现案例贯穿始终,并不断探讨各种实现方式的优劣。 本书针对的是python面向对象编程的新手,设读者具备基本的python技能。对于有其他面向对象编程语言背景的读者,本书将展示python的许多特。
- 【目录】
-
章 面向对象设计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 pure枚举类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
0章 迭代器模式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
1章 通用设计模式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
2章 设计模式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
3章 测试面向对象的程序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
4章 并发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
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价