python __add__()的具体使用
作者:番茄牛腩不吃番茄 发布时间:2022-11-29 07:49:22
标签:python,add
__add__(), 同一个类,两个对象相加的实现逻辑,重写 +
class Myclass(object):
def __init__(self,value):
self.value = value
def __add__(self, other):
return self.value + other.value
if __name__ == '__main__':
o1 = Myclass(1)
o2 = Myclass(2)
print(o1+o2)
打印结果:
3
self 只本身对象,other 指另一个对象(同属于Myclass 类)
python中 “__add__”和“__iadd__” 的区别
__add__”和“__iadd__” 的区别, 两个同为拼接操作
add | iadd |
---|---|
list | list |
tuple | – |
list中是两个都可以使用;而tuple中却只能使用一个 。
1、__add__属性
b = [7, 8, 9, 10, 11, 12]
d = [19, 20, 21, 22, 23, 24]
# 执行了拼接动作,拼接后的值被return出来
g = b.__add__(d)
print(g)
执行结果如下:
D:\python_env\Scripts\python.exe F:/TESTING/BlogPosts/ReadAndWrite/list_and_tuple.py
[7, 8, 9, 10, 11, 12, 19, 20, 21, 22, 23, 24]Process finished with exit code 0
2、__iadd__属性
b = [7, 8, 9, 10, 11, 12]
d = [19, 20, 21, 22, 23, 24]
# 执行拼接动作,属于就地拼接
h = b.__iadd__(d)
print(h)
执行结果如下:
D:\python_env\Scripts\python.exe F:/TESTING/BlogPosts/ReadAndWrite/list_and_tuple.py
[7, 8, 9, 10, 11, 12, 19, 20, 21, 22, 23, 24]Process finished with exit code 0
以上两种都执行后,发现结果基本都是一致,看不出来什么花样,于是我们在调试模式下进行区分,一目了然 。如下展示:
上图是执行到__add__后直接return返回出来的。下图是执行__iadd__后,先拼接一下再把值返出来,注意它不是return出来的 。
来源:https://blog.csdn.net/LIFENG0402/article/details/107603787
0
投稿
猜你喜欢
- 使用echart卡在引入包的问题上了。到github下载的js一直引入不了。注意是引入dirt文件夹下的echarts.js把这个文件夹放入
- 在执行python 代码的时候,有时候需要传递外面的参数进行处理这个该怎么实现呢?需要一个模块from sys import argv当然也
- 关于阻塞主线程join的错误用法Thread.join() 作用为阻塞主线程,即在子线程未返回的时候,主线程等待其返回然后再继续执行.joi
- 为什么我把自己机子上的数据库备份文件往另一台机子上还原不成功?可能是你在Restore的对话框中选项不正确。Restore 有三个选项,分别
- 登录SYS创建临时表空间/*创建临时表空间 */create temporary tablespace 表空间名 t
- 接着上一篇,这里继续整合交易类。import datetime#交易类,后期需要整合公钥,私钥class Transaction: &nbs
- 2009年 6月6日,空间4岁啦!与此同时Qzone月登录用户2亿,同时在线用户也突破了1000万。这是让人欢欣雀跃的数字,在空间同事眼里,
- 上节我们介绍了表连接,更确切的说是inner joins內连接. 內连接仅选出两张表中互相匹配的记录.因此,这会导致有时我们需要的记录没有包
- Mac 环境中既有自带的 Python2.7 也有自己安装的 Python 3.5.1,默认想用 Python3 的环境1. 添加 Pyth
- 本文讨论python中将某个复杂对象转换为简单对象或数据类型的常用魔术放啊,这些在编程中是十分有用的。1、__str__方法。在讲解本方法前
- 什么是存储过程呢?定义:将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程
- 项目中想使用以前的代码,或者什么样的需求致使你需要导入外部的包如果是web 下,比如说django ,那么你新建一个app,把你需要导入的说
- 在我们日常接触到的Python中,狭义的缺失值一般指DataFrame中的NaN。广义的话,可以分为三种。缺失值:在Pandas中的缺失值有
- Capstone是Kali Linux自带的一款轻量级反汇编引擎。它可以支持多种硬件构架,如ARM、ARM64、MIPS、X86。该框架使用
- 本文实例讲述了Python Web框架之Django框架cookie和session用法。分享给大家供大家参考,具体如下:part 1 概念
- 1.前提你要已经安装了 某个 版本的 python, (下载地址 https://www.python.org/downloads/)安装后
- 在使用AJAX开发网站时,经常有朋友遇到乱码的问题,而且一下子难以找到解决方法。其实解决AJAX中文乱码问题很简单。1、服务端程序:<
- 作为六大python可视化库,基本上学会都是可以通吃任何领域的存在,本章要给大家介绍的Altair就是其中之一的可视化库,能够将数据转化为非
- defaultdict 主要用来需要对 value 做初始化的情形。对于字典来说,key 必须是 hashable,immutable,un
- 众所周知道,IE向来是我们在制作网页时最难搞定的对手。但又迫于其用户群数量之多,我们不得不想法设法搞定它。下面,将介绍的将是利用其特点而被发