将实例作为参数python获取

时间:2018-04-09 04:33:07

标签: python class arguments

我想将类实例作为参数获取,如下面的代码。我知道它不起作用。

class coordinate:
  x = 1
  y = 2

inst = coordinate()

def get_class(instance):
  return instance.x + instance.y

get_class(inst)

只是获取实例的内部变量是解决方案之一,但我想要使用的类包含非常多样化的东西。它使代码混乱

x = inst.x
y = inst.y

def get_class(x, y):
  return x + y

get_class(x, y)

有可能吗?

1 个答案:

答案 0 :(得分:2)

首先,我要指出您可能希望xy成为实例属性,而不是类属性。

然后,如果你想要一个以类实例作为参数的函数,你想要的可能是一个实例方法。

class Coordinates:

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

    def sum_coordinates(self):
        return self.x + self.y

Coordinates(1, 2).sum_coordinates() # 3