电子工业出版社精品店店铺主页二维码
电子工业出版社精品店
微信扫描二维码,访问我们的微信店铺

Python面向对象编程 第4版 第四版 Python数据结构内置类和方法设计模式及其在Python中的实现 电子工业出版社

99.00
运费: 免运费
Python面向对象编程 第4版 第四版  Python数据结构内置类和方法设计模式及其在Python中的实现 电子工业出版社 商品图0
Python面向对象编程 第4版 第四版  Python数据结构内置类和方法设计模式及其在Python中的实现 电子工业出版社 商品图1
Python面向对象编程 第4版 第四版  Python数据结构内置类和方法设计模式及其在Python中的实现 电子工业出版社 商品缩略图0 Python面向对象编程 第4版 第四版  Python数据结构内置类和方法设计模式及其在Python中的实现 电子工业出版社 商品缩略图1

商品详情

书名:Python面向对象编程(第4版)  
定价:189.0  
ISBN:9787121483240  
作者:(美)Steven F. Lott(史蒂文·洛特) (加)Dusty Phillips(达斯帝·菲利普斯)  
版次:*1版  
出版时间:2024-08  

内容提要:  
这是一本全面介绍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的许多特性。  



作者简介:  
Steven Lott从计算机还是昂贵且稀有的大型设备时就开始编程。他在高科技领域工作了几十年,接触到了许多思想和技术,包括一些不那么好的技术,但其中绝大多数技术是有用的,有助于发展其他技术。Steven Lott自20世纪90年代以来一直在使用Python,开发了各种工具和应用程序。他为Packt出版社撰写了多本图书,包括《Python面向对象编程指南》、《Python经典实例》和《Python函数式编程》。他是一位技术狂人,生活在常年停靠于美国东海岸的一艘船上。他的生活就像这句格言:不要回家,除非你有故事可讲。Dusty Phillips是一位加拿大作家和软件开发人员。他的职业生涯丰富多彩,他曾在大型政府机构、大型社交网络公司工作,也曾在只有两个人的创业公司工作,还曾在规模介于二者之间的机构或公司工作。除了《Python面向对象编程》,Dusty还在O’ Reilly出版社出版了Creating Apps in Kivy一书。他现在专注于写小说。  
麦叔,本名李彦强,毕业于浙江大学计算机系,现任某世界头部资产管理公司中国区技术负责人。他是Python和AI技术的爱好者和传播者,同时也是浙江省人工智能学会的理事。麦叔的自媒体账号“麦叔编程”在全网拥有超过10万名粉丝。他在人民邮电出版社出版了《麦叔带你学Python》和《Python办公效率手册》。此外,他还与香港科技大学等高校的老师联合开发了多套深度学习和机器学习课程。麦叔曾多次受邀在北京大学、华为等高校和企业进行人工智能相关技术的分享。他出生于山东,现主要生活在杭州,爱好长跑和爬山,曾多次完成半程马拉松和全程马拉松比赛,并登顶过三山五岳。  

媒体评论:  
全面掌握Python面向对象编程!深入讲解核心原则、数据结构、设计模式、测试与并发,并以机器学习分类算法贯穿始终。适合Python面向对象编程的新手及具备其他面向对象编程背景的读者探索Python的独特魅力与强大功能。  

目录:  
*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 重写和super 94  
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 setters 201  
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 使用defaultdict 271  
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/O 340  
把它放在上下文中 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 字符串是Unicode 377  
9.2 正则表达式 383  
9.2.1 模式匹配 385  
9.2.2 用正则表达式解析信息 394  
9.3 文件系统路径 398  
9.4 序列化对象 402  
9.4.1 定制pickle 405  
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 用换行符分隔的JSON 420  
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模块的KNN 460  
10.5.6 使用headq模块的KNN 462  
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用于设置和清理的fixture 594  
13.3.3 更高阶的fixture 599  
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 future 657  
14.4 AsyncIO 662  
14.4.1 AsyncIO实战 663  
14.4.2 读取AsyncIO future 665  
14.4.3 网络AsyncIO 666  
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版 第四版 Python数据结构内置类和方法设计模式及其在Python中的实现 电子工业出版社

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏