比较python中的输出

2024-09-30 01:29:49 发布

您现在位置:Python中文网/ 问答频道 /正文

下面是我正在开发的一个更大程序的简化示例,该程序旨在从一些输入创建一个数字,然后比较这两个数字,说明哪一个更大。在这个例子中是一台计算机,它的所有部分都有一个数字,所有这些数字加在一起形成一个总的数字,我想用来比较计算机。有没有人能建议最好的方法?你知道吗

class compcomputer:

    def __init__(self,cpu,ram,graph):
        self.cpu = cpu
        self.ram = ram
        self.graph = graph

    def __int__(self, other):
        number = (int(0.4*self.cpu) + 0.2*int(self.ram) + 0.2*int(self.graph))
        return number

computer1 = compcomputer(2,3,1)
computer2 = compcomputer(7,3,3)

我正在寻找一种方法来比较computer1和computer2的结果,以判断哪个是更大。对不起对于noob问题,我确信有一个简单的解决方案我忽略了。提前感谢您的指导。你知道吗


Tags: 方法self程序示例numberdef计算机数字
1条回答
网友
1楼 · 发布于 2024-09-30 01:29:49

我建议将gtlt方法添加到对生成的实例变量进行操作的类中。像这样:

class CompComputer:

    def __init__(self,cpu,ram,graph):
        self.cpu = cpu
        self.ram = ram
        self.graph = graph
        self.score = self.generate_score()

    def generate_score(self):
        number = (int(0.4  *self.cpu) + 0.2 * int(self.ram) + 0.2 * int(self.graph))
        return number

    def __gt__(self, other):
        return self.score > other.score

    def __lt__(self, other):
        return self.score < other.score

computer1 = CompComputer(2,3,1)
computer2 = CompComputer(7,3,3)

print(computer1 > computer2)
print(computer1 < computer2)

您可以在这里阅读这些方法:https://docs.python.org/3/reference/datamodel.html

相关问题 更多 >

    热门问题