没有合适的资源?快使用搜索试试~ 我知道了~
首页Python魔法方法指南:深入理解与实践
"《Python魔法方法指南》是一本由Rafe Kettler编写的深入教程,专为对Python面向对象编程有所研究或热爱探索的读者而设计。该书于2015年9月4日发布,旨在弥补官方文档中关于Python魔法方法介绍的不足。魔法方法是Python中至关重要的特性,它们是一类特殊的函数,名称通常包含双下划线(如`__init__`或`__lt__`),这些方法使得开发者能够为类添加“魔法”功能,如特殊的行为或内置操作。 Python中的魔法方法数量众多且分布在语言参考手册的不同部分,但缺乏系统性的组织和实例说明。官方文档中虽然详细解释了语法,但往往缺乏实际应用场景的演示,这可能导致初学者在理解和应用上遇到困难。作者Kettler通过一系列博客文章,将复杂的魔法方法以更易理解的方式呈现出来,并最终汇总成这本书。 本书提供了丰富的实例和实用例子,帮助读者更好地掌握这些隐藏在类和对象背后的魔法,无论是作为学习工具、复习资料还是参考手册,都能为Python开发者提供一个用户友好的指南。通过阅读《Python魔法方法指南》,读者不仅能了解方法名规则(如前置或后置双下划线),还能学会如何自定义这些方法来实现诸如比较、初始化、复制、序列化等常见的行为。这是一本深入浅出、内容详实的Python魔法方法教程,对于想要提升Python编程技能的读者来说,是一份不可或缺的参考资料。"
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/12337747/bg4.jpg)
3.2 Numeric Magic Methods
Just like you can create ways for instances of your class to be compared with comparison
operators, you can define behavior for numeric operators. Buckle your seat belts, folks, there’s
a lot of these. For organization’s sake, I’ve split the numeric magic methods into 5 categories:
unary operators, normal arithmetic operators, reflected arithmetic operators (more on this
later), augmented assignment, and type conversions.
3.2.1 Unary operators and functions
Unary operators and functions only have one operand, e.g. negation, absolute value, etc.
__pos__(self) Implements behavior for unary positive (e.g. +some_object)
__neg__(self) Implements behavior for negation (e.g. -some_object)
__abs__(self) Implements behavior for the built in abs() function.
__invert__(self) Implements behavior for inversion using the ~ operator.
__round__(self, n) Implements behavior for the buil in round() function. n is the number
of decimal places to round to.
__floor__(self) : Implements behavior for math.floor(), i.e., rounding down to the nearest
integer.
__ceil__(self) : Implements behavior for math.ceil(), i.e., rounding up to the nearest
integer.
__trunc__(self) : Implements behavior for math.trunc(), i.e., truncating to an integral.
3.3 Normal arithmetic operators
Now, we cover the typical binary operators (and a function or two): +, -, * and the like. These
are, for the most part, pretty self-explanatory.
__add__(self, other) Implements addition.
__sub__(self, other) Implements subtraction.
__mul__(self, other) Implements multiplication.
__floordiv__(self, other) Implements integer division using the // operator.
__div__(self, other) Implements division using the / operator.
__truediv__(self, other) Implements true division. Note that this only works when from
__future__ import division is in effect.
__mod__(self, other) Implements modulo using the % operator.
__divmod__(self, other) Implements behavior for long division using the divmod() built in
function.
__pow__ Implements behavior for exponents using the ** operator.
4
剩余18页未读,继续阅读
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
weixin_39164435
- 粉丝: 1
- 资源: 53
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Vue实现iOS原生Picker组件:详细解析与实现思路
- Arduino蓝牙小车:参数调试与功能控制
- 百度Java面试精华:200页精选资源涵盖核心知识点
- Swift使用CoreData填坑指南:CoreData在Swift 3.0的变化
- 微距离无线充电器创新设计及其实验探索
- MTK Android平台开发全攻略:44步详解流程
- RecyclerView全面解析:替代ListView的新选择
- Android开发:自动适配中英文键盘解决方案
- Android调用WebService接口教程
- Android开发:BitmapUtil图片处理全解析与实例
- Android多线程断点续传实现详解
- PCA算法在人脸识别会议签到系统中的应用
- EventBus 3.0:Android事件总线详解与实战应用
- Android FileUtil:全面解析文件操作实用技巧与实例
- RecyclerView添加头部和尾部实战教程
- Android实现微博滑动固定顶部栏实战与优化
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)