Python如何显式地改变类对象的求值?

2021-10-17 17:17:01 发布

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

函数my_func获取一个参数,可以是整数或类:

class SomeClass:
    val = 0
    def __init__(self):
        self.val = 0
    def set(self, val):
        self.val = val
    def get(self):
        return self.val 

我想把这两种类型作为一个整体来处理。 我是否可以明确地告诉Python,对SomeClass类型的对象的求值应该返回对象的val字段,而不是它自己的对象。你知道吗

这意味着要(以某种方式)完成以下代码:

s = SomeClass()
s.set(3)
test = s # this line should assign value 3(int) to test
test # prints 3