saouo 发表于 2014-10-28 16:31

看书看到2个不太理解,请指点下

def __norm_cval(self.cmpres):
      return cmp(cmpres, 0)

def __cmp__ (self, other):
      return self.__norm_cval(cmp(self.__num , other.__num)) +\
    self.__norm_cval(cmp(self.__string,other.__string))

中间这个加号是什么意思?是相加还是字符串连接??? self.__norm_cval是不是会调用自定义的 __norm_cval函数?

TasteOracle 发表于 2014-10-28 19:31

数字的话,就是求和,字符串的话就是连接,self.__norm_cval是调用自定义的函数

venustef 发表于 2016-01-21 10:36

想不懂定义这个有什么意义啊?
def __norm_cval(self,cmpres):
      return cmp(cmpres, 0)
为什么还非要中间费这么一步呢?

zhonghua7896321 发表于 2016-01-30 00:23

中间的一个过渡方法,跟特定数值0做对比,这样也可以简洁代码

bskay 发表于 2016-02-04 15:33

回复 3# venustef


这样显得写这个代码的人很牛逼的样子,考虑后面的扩展的可能等等...过度设计的东西
页: [1]
查看完整版本: 看书看到2个不太理解,请指点下