使用 len() 和 def __len__(self):来构建一个类。

13 浏览
0 Comments

使用 len() 和 def __len__(self):来构建一个类。

只是好奇,当我构建一个类时,使用len()还是def __len__()有什么区别(优势和劣势)?哪个是最佳的Python风格?

   class foo(object):
      def __init__(self,obs=[])
         self.data = obs
         self.max = max(obs)
         self.min = min(obs)
         self.len = len(obs)

或者

   class foo(object):
      def __init__(self,obs=[])
         self.data = obs
         self.max = max(obs)
         self.min = min(obs)
      def __len__(self):
         return len(self.data)

0