subclass of object

Alf P. Steinbach alfps at start.no
Fri Apr 2 14:34:28 CEST 2010


* Steve Holden:
> Alf P. Steinbach wrote:
>> * Jason Friedman:
>>> Hi, what is the difference between:
>>>
>>> def MyClass(object):
>>>     pass
>>>
>>> and
>>>
>>> def MyClass():
>>>     pass
>> If you really meant 'def', then the first is a routine taking one
>> argument, and the second is a routine of no arguments.
>>
>> If you meant 'class' instead of 'def', then it depends on the Python
>> version.
>>
>> In Py2 the first then defines a new-style class, while the second
>> defines an old-style class. E.g. you can see some difference by checking
>> with 'isinstance'. In Py3 there's no difference.
>>
> Interesting. I actually read "class"  for "def" and replied accordingly.
> 
> As can plainly be seen ...

Yes, the names act as comments about intent.

Such comments can be misleading about what the code actually does.

Since I think you're very interested in the human aspect of this I suggest you 
try to find information about how master chess players remember chess boards. As 
I recall, they find it really difficult to remember random boards, while boards 
that represent actual chess games are remembered at a glance. Indicating that 
what's remembered is at a much higher level of abstraction than piece positions.


Cheers,

- Alf



More information about the Python-list mailing list