error messages raised by python got me thinking.
Laura Creighton
lac at strakt.com
Sun Oct 21 09:27:15 EDT 2001
Here is a common error:
>>> f='1'
>>> g=2
>>> f+g
Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: cannot add type "int" to string
--------------
Here is another one:
>>> g+f
Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: unsupported operand types for +
-----------
These are rather different error messages.
The reason I noticed this, is because every time I get the first
error, my initial parsing is always: f is the int, and g is the
string. I seem to expect order of the arguments as presented in the
error message to be the order in which I typed them. I think I would
prefer 'Cannot add type string _and_ int'. For me, adding is not something
that I do _to_ an existing thing, but something you do from top to bottom
(or in this case left to right). Not quite the difference between a
transitive and an intransitive verb, but it has that flavour. Perhaps
I do not _add_ but _sum_. [Both are transitive, but I sum the whole
set, not an individual element of the set. In my head anyway.]
This has possible implications in how easy it is to learn python. Am
I simply odd, or typical? In an international world, what does
'typical' mean given than many languages don't have verb constructs
like this at all?
(Further question: why the double quotes around _int_ but not _string_?)
ever curious,
Laura Creighton
More information about the Python-list
mailing list