caneman

caneman

V2EX 第 101294 号会员,加入于 2015-02-28 19:27:58 +08:00
今日活跃度排名 8675
根据 caneman 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
caneman 最近回复了
71 天前
回复了 Renco 创建的主题 职场话题 真摆烂是主流趋势?
所以他摆烂关你啥事?(指你已经在领导那和他撇清关系的情况下)
666 ,看着不错
91 天前
回复了 imNull 创建的主题 分享创造 [再送一批兑换码] iOS 短信拦截
37X3H4KTNY3L 已用,感谢
166 天前
回复了 caneman 创建的主题 NAS NAS 618 选购,最具性价比的选择是?
@ArmstrongPater 这价格也太香了,今年我看下得 6.5 左右
197 天前
回复了 caneman 创建的主题 Python 怎么实现给抽象方法类增加__call__方法
class A(ABC):

def __call__(self, *args, **kwargs):
obj = super().__call__(*args, **kwargs)
return obj.run()

def __init__(self, name):
self.name = name

@abstractmethod
def run(self):
pass


class B(A):

def __init__(self, name):
super().__init__(name)

def run(self):
print(self.name)
197 天前
回复了 caneman 创建的主题 Python 怎么实现给抽象方法类增加__call__方法
@BingoXuan 比__new__的时机要晚,在 cls.__init__之后(下面的代码不对,但是大概这么个意思)
197 天前
回复了 caneman 创建的主题 Python 怎么实现给抽象方法类增加__call__方法
@BingoXuan
大概这么一个场景,很多类,每个类有细微不同,把里面共同的部分提取出来,放在一个抽象类里面,也定义了一些子类必须实现的方法(代码 1 的部分)

所有这些子类,并不需要保持一个对象,可以看作一个大号的函数,我想实现,所有的子类,能通过 B() 这样就直接执行(代码 2 的部分)

有没有一种方法,能让 B 同时实现两种功能,即在 1 的基础上,让其子类能实现,子类()这样作为一个函数直接执行的功能
197 天前
回复了 caneman 创建的主题 Python 怎么实现给抽象方法类增加__call__方法
@BingoXuan 我想实现的是,B 是一个类,但是可以当作函数用,B(),就直接执行了
求拉 U3ByX0NhbmU=
关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3904 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 17ms · UTC 04:11 · PVG 12:11 · LAX 20:11 · JFK 23:11
Developed with CodeLauncher
♥ Do have faith in what you're doing.