Class Customization and Operator Overloading

0
13Кб

Class customization

Class customization allows you to define how a class behaves for specific operations such as printing or accessing attributes.

Customize classes by creating instances methods using special method names (double underscores).

Rich comparison methods overload some common comparison operators.

Rich comparison method

Overloaded operator

__lt__(self, other)

Less than (<)

__le__(self, other)

Less than or equal-to (<=)

__gt__(self, other)

Greater than (>)

__ge__(self, other)

Greater than or equal-to (>=)

__eq__(self, other)

Equal to (==)

__ne__(self, other)

Not equal to (!=)

 

Operator overloading

Operator Overloading allows you to replace the functionality of numeric operators (such as +, -, *, and /) with a method.

For example, you can write an __add__(self, other) method to replace the functionality of the (+) operator.

Use the built-in isinstance() method to handle different object types for the operation.

Method

Description

__add__(self, other)

Add (+)

__sub__(self, other)

Subtract (-)

__mul__(self, other)

Multiply (*)

__truediv__(self, other)

Divide (/)

__floordiv__(self, other)

Floored division (//)

__mod__(self, other)

Modulus (%)

__pow__(self, other)

Exponentiation (**)

__and__(self, other)

"and" logical operator

__or__(self, other)

"or" logical operator

__abs__(self)

Absolute value (abs())

__int__(self)

Convert to integer (int())

__float__(self)

Convert to floating point (float())

Поиск
Категории
Больше
Computer Programming
Nested Lists, List Slicing, and Modifying Lists
Here's a breakdown of nested lists, list slicing, and modifying lists in Python: 1. Nested...
Biology
UACE BIOLOGY EDUCAN MOCK 2024
UACE BIOLOGY EDUCAN MOCK 2024
От Landus Mumbere Expedito 2024-08-11 11:48:05 0 11Кб
Образование
George Washington Carver
От Modern American History 2024-08-02 16:31:15 0 12Кб
Computer Programming
HTML Horizontal Rules (<hr>)
The <hr> tag represents a thematic break in a page, typically displayed as a horizontal...
От HTML PROGRAMMING LANGUAGE 2024-08-15 01:26:07 0 9Кб
Technology
HOW TO OVERCOME COMPUTER NETWORK CHALLENGES
Overcoming the challenges faced in managing and using computer networks requires a combination of...
От ALAGAI AUGUSTEN 2024-07-17 17:38:08 0 10Кб
Talksphare https://talksphare.com