Python中的__add__方法

Python中的__add__方法

在本教程中,我们将讨论运算符重载及其优势,以及如何重载”+”运算符。

在讨论__add__方法之前,让我们了解什么是运算符重载。

运算符重载使我们能够创建对现有运算符的定义,以便我们也可以将其用于用户定义的数据类型。

考虑以下示例:

i)10+2

在第一个示例中,”+”运算符用于相加两个整数。

ii)’JavaTpoint’ + ‘Tutorials’

在第二个示例中,”+”运算符用于连接两个字符串。

iii)list1+list2

在第三个示例中,”+”运算符用于合并两个列表的元素。

这使得很明显,根据数据类型,”+”运算符在不同的情况下具有不同的功能。

运算符重载的优势

  1. 相同的运算符可以用于不同的用户定义对象。
  2. 提供了对用户定义类型的内置数据类型的语法支持。
  3. 这个概念在理解科学计算中起着重要作用。
  4. 程序看起来简洁易懂。

现在是深入研究运算符”+”

可以进行重载的应用领域的时候了。

我们将使用的函数是__add__

在第一个程序中,我们将讨论如何添加两个复数。

示例

class Complex:
    def __init__(self):
        self.real=0
        self.imag=0
    def decValue(self,real,imag):
        self.real=real
        self.imag=imag
    def __add__(self,C):
        temp=Complex()
        temp.real=self.real+C.real
        temp.imag=self.imag+C.imag
        return temp
    def display(self):
        print("(",self.real, "+", self.imag,"i)")
C1=Complex()
C1.decValue(10,12)
C2=Complex()
C2.decValue(8,6)
C3=Complex()
C3=C1+C2
print("The result of the addition of two complex numbers is: ")
C3.display()

输出:

The result of the addition of two complex numbers is: 
( 18 + 18 i)

说明 –

在上面的程序中,我们创建了一个名为’Complex’的类,并定义了一些类方法。第一个方法使用 __init__ ,它是一个类构造函数,必须使用它来初始化类对象的变量。接下来,我们可以看到这里的关键字’self’,它引用的是对象本身。

下一个方法, decValue 用于传递实数和虚数的值。

接下来,我们将添加两个复数,其中第一个数的实部将与第二个数的实部相加,第一个数的虚部将与第二个数的虚部相加。

最后,display方法将以提供的格式显示所需的输出。

class Student:
    def __init__(self,name,marks):
        self.name=name
        self.marks=marks
    def display(self):
        print(self.name,self.marks)
    def __add__(self,S):
        temp=Student(S.name,[])
        for i in range(len(self.marks)):
            temp.marks.append(self.marks[i]+S.marks[i])
        return temp
S1=Student("Aarav",[90,91,88])
S2=Student("Aarav",[88,86,87])
S1.display()
S2.display()
S3=Student("",[])
S3=S1+S2
S3.display()

输出:

Aarav [90, 91, 88]
Aarav [88, 86, 87]
Aarav [178, 177, 175]

解释 –

在上面的程序中,我们创建了一个名为’Student’的类并定义了一些类方法。第一个方法使用__init__,它是一个类构造函数,使用它是很重要的,因为它初始化了类对象的变量。接下来,我们可以看到这里使用了关键字’self’,它指的是对象本身。

接下来,我们将为学生添加成绩,为此我们使用了for循环将成绩附加到列表中。

最后,display方法将按照提供的格式显示所需的输出。

因此,在本文中,我们学习了如何在Python程序中使用 __add__

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程