* 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
--
http://mail.python.org/mailman/listinfo/python-list