python-设计并实现平面点类Point

news/2024/10/5 1:25:03

题目描述

定义一个平面点类Point,对其重载运算符关系运算符,关系运算以距离坐标原点的远近作为基准,远的为大。程序完成对其的测试。

【源代码程序】

import math

class Point():

    def __init__(self,x,y):

        self.x = x

        self.y = y

    def __lt__(self, other):

        l1 = math.sqrt(self.x**2+self.y**2)

        l2 = math.sqrt(other.x**2+other.y**2)

        return l1<l2

    def __le__(self, other):

        l1 = math.sqrt(self.x**2+self.y**2)

        l2 = math.sqrt(other.x**2+other.y**2)

        return l1<=l2

    def __gt__(self, other):

        l1 = math.sqrt(self.x**2+self.y**2)

        l2 = math.sqrt(other.x**2+other.y**2)

        return l1>l2

    def __ge__(self, other):

        l1 = math.sqrt(self.x**2+self.y**2)

        l2 = math.sqrt(other.x**2+other.y**2)

        return l1>=l2

    def __eq__(self, other):

        l1 = math.sqrt(self.x**2+self.y**2)

        l2 = math.sqrt(other.x**2+other.y**2)

        return l1==l2

    def __ne__(self, other):

        l1 = math.sqrt(self.x**2+self.y**2)

        l2 = math.sqrt(other.x**2+other.y**2)

        return l1!=l2

 

p1 = Point(1,2)

p2 = Point(3,4)

p=p1<p2

print(p)

p=p1<=p2

print(p)

p=p1>p2

print(p)

p=p1>=p2

print(p)

p=p1==p2

print(p)

p=p1!=p2

print(p)

 

运行测试

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/28822.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

python-设计并实现计算不同职称的教师工资

【题目描述】设计教师接口,该接口包含教师工资计算方法。应用(一)中的高校人员信息包,设计不同职称的教师类:教授,副教授,讲师,教师的基本信息包括姓名、性别、出生年月、职称、课时工作量等属性。注意学校对教师每月工资的计算规定如下:固定工资+课时补贴;教授的固定…

Sermant在异地多活场景下的实践

本文将对Sermant在异地多活场景下的实践进行剖析。本文分享自华为云社区《Sermant在异地多活场景下的实践》,作者:华为云开源。 Sermant社区在1.3.0和1.4.0版本相继推出了消息队列禁止消费插件和数据库禁写插件,分别用于解决异地多活场景下的故障切流和保护数据一致性问题。…

算法~PBKDF2-SHA让密码更安全

摘要:在当今的数字世界中,密码安全是至关重要的。为了保护用户密码免受未经授权的访问和破解,Password-Based Key Derivation Function 2 (PBKDF2)算法成为了一种重要的工具。 在 PBKDF2 算法中,SHA 表示 Secure Hash Algorithm,它是一系列密码哈希函数的标准,其中 SHA-1…

[转帖]如何通过Native Memory Tracking追踪JVM的内部内存使用?

https://zhuanlan.zhihu.com/p/368599144# 导读:Java8给 HotSpot VM引入了Native Memory Tracking (便于阅读我统一简称为NMT)特性,可以用于追踪JVM的内部内存使用,并可以通过jcmd命令来访问。不过要注意的是NMT是通过在JVM代码中添加跟踪点的方式实现内存跟踪的,因此NMT不…

于光电容积波PPG和心电图ECG的连续血压估计深度学习模型

具体的软硬件实现点击 http://mcu-ai.com/ MCU-AI技术网页_MCU-AI人工智能 血压监测是监测人们健康状况的途径之一。早期发现血压异常可以帮助患者得到早期治疗并降低与心血管疾病相关的死亡率。因此,有一种机制来实时监测患者的血压变化是非常有价值的。在本文中,我们提出了…

ReSharper 显示使用的颜色

在代码里面输入类似于 Colors.Red 的代码,将会自动在代码后面显示一个对应颜色的小方块。本文将告诉大家这个功能的开关在哪里如 ReSharper 的官方文档描述,此功能的效果如下或如下此功能名叫 “Highlight color usages” 可以对代码里面的颜色进行颜色标识,比如在代码提示或…

[转帖]Oracle Linux 9.3 正式版发布 - Oracle 提供支持 RHEL 兼容发行版

sysin2023-11-21 上海 阅读 5 分钟 Oracle Linux 9.3 正式版发布 - Oracle 提供支持 RHEL 兼容发行版 Oracle Linux with Unbreakable Enterprise Kernel (UEK) & Red Hat compatible kernel (RHCK) 请访问原文链接:https://sysin.org/blog/oracle-linux-9/,查看最新版。…