读书人

新手弱弱的 大家帮帮小弟我吧 就封装一

发布时间: 2012-04-23 13:17:38 作者: rapoo

新手弱弱的求助 大家帮帮我吧 就封装一下 T.T

Python code
import stringdef check(x):    if type(x)==type(1):        return x    elif type(x)==type(''):        return string.atoi(x)if __name__=='__main__':    a=2    b='3'    a=check(a)    b=check(b)    print a + b


程序很简单就是判断是数字还是字符串 全部转化为数字后相加 求封装成Num类 没写过类555

[解决办法]
是的,重载__add__的时候应该返回类对象本身,而不是相加后的某个属性。
这样才能支持所谓的“链式表达式”,如C++中的<<和>>

如果你想封装一个函数,我觉得可以参考下设计模式中的工程模式(只是我的理解适合用这个模式,或许有更好的方法)。

读书人网 >perl python

热点推荐