[EMAIL PROTECTED] a écrit : > Hi, > > With properties, attributes and methods seem very similar. I was > wondering what techniques people use to give clues to end users as to > which 'things' are methods and which are attributes.
Documentation. > With ipython, I > use tab completion all the time, but I can rarely tell from the names > alone whether it is an attribute or method. Actually, in Python, what you call "methods" are technically attributes - usually class attributes, instances of the function class - until they are looked up, at which time the lookup mechanism detect that they implement the descriptor protocol, invoke it, an return the result of this invocation - here a 'method' instance - in place of the original attribute. > Tips? Ideas? Best practices? Reading the doc ?-) Else, you can check whether the attribute is an instance of types.MethodType - but that's not 100% garanteed to work (someone could implement it's own descriptor type acting like a function but not returning a method object). Or if all you need to know is if the attribute is callable, then just ask: print callable(obj.attr) My 2 cents -- http://mail.python.org/mailman/listinfo/python-list