Error-Msg Jeannie's charming, teasing ways
Cameron Simpson
cs at cskk.id.au
Thu Feb 23 22:58:04 EST 2023
On 23Feb2023 14:58, Hen Hanna <henhanna at gmail.com> wrote:
>Python's Error-Msg genie (Jeannie) is cute and fickle... She
>sometimes teases me by not telling me what the VALUE of the "int" is
> ( "That's for me to know, and for you to find out!" )
>as in:
> TypeError: can only concatenate str (not
> "int") to str
This is a runtime error< not a syntax error. Valid code using invalid
values. It can only be seen at runtime.
>Other times, she (Jeannie) gives me a helpful comment:
>ABCD (above and beyond... her job desc.)
> if (x=0):
> ^^^
>SyntaxError: invalid syntax. Maybe you meant '==' or ':=' instead of '='?
Syntax error can be seen at compile time. Since Python's interpreted,
the compilation step i usually implicit in trying to run things. But
technically this happens before any of _your_ code runs.
The helpfulness of this warning is a _very_ recent upgrade, with Python
3.11 I think, maybe 3.10. The syntax errors used to be a lot less
helpful.
>is there a Tool that can scan my code and tell me such (wink,wink)
>type suggestions????
There are several type checking programs for Python, with mypy probably
being the best known. I seem to recall seeing some mention of tools
which will aid inferring types from partially types programmes, usually
as an aid to completing the type annotations.
Cheers,
Cameron Simpson <cs at cskk.id.au>
More information about the Python-list
mailing list