gpt4 book ai didi

python - 包装 Python int/float 对象

转载 作者:行者123 更新时间:2023-11-28 18:54:38 26 4
gpt4 key购买 nike

我正在开发 Python 并发框架(我知道,YACF),并且希望能够将变量作为 Futures 返回,但用户不会注意到它。

现在我在做:

x = someAsyncMethod(args)
print "Return value is %d" % x.get_value( )

因为该方法返回一个 Future 对象,但我希望它是:

x = someAsyncMethod(args)
print "Return value is %d" % x

但仍然调用 x 的 .get_value( )。因此我想 Proxy 包装 Python 对象,包括 int。类似 __get__ 的东西,但是如果 ProxyInt 是 int 的代理并且我做了:

x = ProxyInt(10)
print x

n = x

我的“__get__”方法会被调用并在执行“return 10”之前做一些魔术

最佳答案

>>> class I(object):
... def __int__(self):
... return 42
...
>>> i = I()
>>> print '%d' % i
42
>>> class F(object):
... def __float__(self):
... return 3.14
...
>>> f = F()
>>> print '%f' % f
3.140000
>>> class S(object):
... def __str__(self):
... return 'foo'
...
>>> s = S()
>>> print s
foo

关于python - 包装 Python int/float 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5253386/

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