Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

python运算符重载

作者:Haggard憔悴   发布日期:2025-05-23   浏览:31

class Vector:
    def __init__(self, x, y):
        self.x = x
        self.y = y

    # 重载加法运算符 (+)
    def __add__(self, other):
        return Vector(self.x + other.x, self.y + other.y)

    # 重载减法运算符 (-)
    def __sub__(self, other):
        return Vector(self.x - other.x, self.y - other.y)

    # 重载乘法运算符 (*)
    def __mul__(self, scalar):
        return Vector(self.x * scalar, self.y * scalar)

    # 重载字符串表示方法 (str())
    def __str__(self):
        return f"Vector({self.x}, {self.y})"

# 示例使用
v1 = Vector(1, 2)
v2 = Vector(3, 4)

print(v1 + v2)  # 输出: Vector(4, 6)
print(v1 - v2)  # 输出: Vector(-2, -2)
print(v1 * 3)   # 输出: Vector(3, 6)

解释说明:

  • __init__ 方法用于初始化向量的 xy 坐标。
  • __add__ 方法重载了加法运算符 (+),使得两个 Vector 对象可以相加。
  • __sub__ 方法重载了减法运算符 (-),使得两个 Vector 对象可以相减。
  • __mul__ 方法重载了乘法运算符 (*),使得 Vector 对象可以与一个标量相乘。
  • __str__ 方法定义了对象的字符串表示形式,方便打印输出。

通过这些方法,我们可以像操作普通数值一样操作自定义的 Vector 类对象。

上一篇:python中while循环

下一篇:python中list代表什么

大家都在看

python时间格式

python ord和chr

python list.pop

python的for i in range

npm config set python

python代码简单

python读取文件夹

python中turtle

python 输出时间

python中list代表什么

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站