gpt4 book ai didi

python将对象转换为int

转载 作者:行者123 更新时间:2023-11-28 19:49:39 25 4
gpt4 key购买 nike

我正在使用 numpy 模块检索二维数组中最大值的位置。但是这个二维数组由 MyObjects 组成。现在我得到错误:

TypeError: unorderable types: int() > MyObject()

我试图用这段代码覆盖 int 函数:

def int(self):
return self.score

但这并不能解决我的问题。我是否必须将 MyObjects 的二维数组转换为整数的二维数组,我是否必须扩展 Integer 对象(如果这在 python 中可行)或者我可以用另一种方式重写这个 int() 函数吗?

[编辑]

完整对象:

class MyObject:
def __init__(self, x, y, score, direction, match):
self.x = x
self.y = y
self.score = score
self.direction = direction
self.match = match

def __str__(self):
return str(self.score)

def int(self):
return self.score

我调用这个对象的方式:

 def traceBack(self):
self.matrix = np.array(self.matrix)
maxIndex = self.matrix.argmax()
print(self.matrix.unravel_index(maxIndex))

最佳答案

尝试使用

...
def __int__(self):
return self.score
...

test = MyObject(0, 0, 10, 0, 0)
print 10+int(test)

# Will output: 20

在您的 MyObject 类定义中。

关于python将对象转换为int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16693862/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com