In article <[EMAIL PROTECTED]>, Bruno Desthuilliers <[EMAIL PROTECTED]> wrote: >Aahz a écrit : >> In article <[EMAIL PROTECTED]>, >> Ben Finney <[EMAIL PROTECTED]> wrote: >>> >>>Typically, classes are created as a subclass of another class. The >>>top-level basic type in Python is 'object', so if your class doesn't >>>make sense deriving from anything else, derive from 'object'. >>> >>> class Point(object): >>> pass >>> >>>Defining a class with *no* superclass is not recommended. If you don't >>>yet understand the difference between the above style (called a >>>"new-style" class) and the style you presented, you should always >>>derive from a superclass ('object' or something more specific) until >>>you encounter a situation where that causes a problem. >> >> Side note: I disagree with the above advice, but it's Thanksgiving and I >> don't have enough room on the margin for the proof. I think classic >> classes are just fine. > >Don't see it as a religious point please, but I fail to understand why >you seem so in love with old-style classes ? new-style classes are the >"official" Python object model since 2.2 (which is a few years ago now), >and the last mandatory use of them (exceptions...) disappeared with the >2.5. AFAIK, everything you do with old-style classes can be done with >new-style ones. FWIW, old-style classes support is now only for backward >compat. So *why* insisting on using them ?
There's a big difference between saying "always use old-style classes" and "classic classes are just fine". So I'm certainly not "in love with" or "insisting" on using classic classes. Mostly what I'm saying is that I think it's kinda gross and grotesque for newcomers to be told to use class Point(object): pass instead of class Point: pass You are also wrong about new-style classes being the "official" object model -- the tutorial doesn't even mention them yet! I also think that new-style classes should be avoided in Python 2.2 because of the subtle differences that were introduced in 2.3 -- and 2.2 is still in active use. -- Aahz ([EMAIL PROTECTED]) <*> http://www.pythoncraft.com/ "In many ways, it's a dull language, borrowing solid old concepts from many other languages & styles: boring syntax, unsurprising semantics, few automatic coercions, etc etc. But that's one of the things I like about it." --Tim Peters on Python, 16 Sep 1993
-- http://mail.python.org/mailman/listinfo/python-list