[Python-ideas] (no subject)

Wes Turner wes.turner at gmail.com
Tue Nov 29 06:33:07 EST 2016


On Tuesday, November 29, 2016, Wes Turner <wes.turner at gmail.com> wrote:

> The existing docs for errors and exceptions:
>
> - https://docs.python.org/2/library/exceptions.html
> - https://docs.python.org/3/library/exceptions.html
> - https://hg.python.org/cpython/file/tip/Doc/library/exceptions.rst
> - https://github.com/python/cpython/blob/master/Doc/library/exceptions.rst
>
> - https://docs.python.org/2/tutorial/errors.html
> - https://docs.python.org/3/tutorial/errors.html
> - https://hg.python.org/cpython/file/tip/Doc/tutorial/errors.rst
> - https://github.com/python/cpython/blob/master/Doc/tutorial/errors.rst
>
> - https://www.tutorialspoint.com/python/python_exceptions.htm
>
> - If the docs don't answer the question (and match to the search terms),
> they probably should.
>
> - [ ] DOC: something about why "except Exception: pass" is usually bad
> - [ ] DOC: something about SystemExit and atexit: https://docs.python.
> org/2/library/atexit.html
>
>
> You can get alot more traceback from pytest (w/ pytest-sugar) and/or nose
> (with nose-progressive).
>
> There is extra information in the stack at exception time; but, IIUC, it
> would take a number of subclasses with class-specific docs and/or class
> introspection to be as detailed as "you probably wanted .append there
> because this is a List and the length is n but the key was".
>
> Maybe a "learning mode" which automatically calls inspect.getdoc() on
> Exception would be useful (sys.excepthook)?
> Practically, I usually just open an extra IPython shell and run
> `list.append?` for docs or `list.append??` for (Python but not C!) source
> (inspect.getsource).
> IPython also prints the function signature with `?`
>

- [ ] How could I also print out type annotations w/ function signatures
and docstrings?/??/???
https://github.com/python/typeshed/blob/master/stdlib/2/typing.pyi


>
> The pdb++ debugger requires funcsigs in order to print function
> signatures. If pdb++ is installed, it preempts the standard pdb module; so
> `nosetests --pdb` and `pytest --pdb` launch pdb++ when an error or
> exception is raised.
>
> https://pypi.python.org/pypi/pdbpp/
>
> http://nose.readthedocs.io/en/latest/plugins/debug.html
>
> http://doc.pytest.org/en/latest/usage.html
>
> https://docs.python.org/2/library/inspect.html
>
> Exceptions could be better someday. Testing (and debugging) skills are
> always good to learn; coincidentally, there are many great tools for it.
>
> ... https://westurner.org/wiki/awesome-python-testing#debugging
>
> On Tuesday, November 29, 2016, Victor Stinner <victor.stinner at gmail.com
> <javascript:_e(%7B%7D,'cvml','victor.stinner at gmail.com');>> wrote:
>
>> Hi,
>>
>> Python is optimized for performance. Formatting an error message has a
>> cost on performances.
>>
>> I suggest you to teach your student to use the REPL and use a custom
>> exception handler: sys.excepthook:
>> https://docs.python.org/2/library/sys.html#sys.excepthook
>>
>> Using a custom exception handler, you can run expensive functions,
>> like the feature: "suggest len when length is used".
>>
>> The problem is then when students have to use a Python without the
>> custom exception handler.
>>
>> Victor
>> _______________________________________________
>> Python-ideas mailing list
>> Python-ideas at python.org
>> https://mail.python.org/mailman/listinfo/python-ideas
>> Code of Conduct: http://python.org/psf/codeofconduct/
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20161129/bfdfcd8c/attachment.html>


More information about the Python-ideas mailing list