El dom, 7 feb 2021 a las 9:38, Jonathan Crall (<erote...@gmail.com>) escribió:
> > > Currently my timerit package requires syntax like: > > import timerit > for timer in timerit.Timerit(num=100, bestof=3, verbose=1): > with timer: > [code] > > But that could be simplified to > > > import timerit > for timer in timerit.Timerit(num=100, bestof=3, verbose=1) with timer: > [code] > > Only if you don't setup vars like oficial example* or not calc some statistic after timered block * https://timerit.readthedocs.io/en/latest/#timerit-documentation > And free up one level of indentation (very useful if you are trying to > keep under 80 chars per line) > > In your example this is true by luck: import timerit class MyClass: def myfunc(): # Next line is 79 chars long, at limit of restricted pep8 for timer in timerit.Timerit(num=100, bestof=3, verbose=1) with timer: [code] I usually have identation "problems" in ifs, sometimes in for clauses. I usually have not problems in function bodys. I dislike compacted form because: - i doubt that is good comply their objetive: reduce line length in body but extend it in control flow lines. - It's less readable for me. I need to attend to long lines to determine control flow. - Refactors are complicated. Think in add a initialization block in your example and how many lines are changed to be reviewed by your peers. - It's syntactic sugar for only some marginal edge cases: it cloying the language Anyway pep8** says: Some teams strongly prefer a longer line length. For code maintained exclusively or primarily by a team that can reach agreement on this issue, *it is okay to increase the line length limit up to 99 characters*, provided that comments and docstrings are still wrapped at 72 characters. ** https://www.python.org/dev/peps/pep-0008/#maximum-line-length So, if 79 chars by line it's too hard for your team you can agree 99 chars lines with your team. Maybe you find problems in: - web documentation that includes fixed designs for 79 chars (usually you can use other theme) - errors in linters (can be configured to new line width) - forcing horizontal scroll in 3ways merges for some team members ¯\_(ツ)_/¯ rarely you find problems by terminal widths (this is a very ancient problem resolved in our century). So I recomend you relaxed pep8 with 99 chars limit by line in your code instead to pretend change syntax with no clear gains. regards, Javi
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/CRNHPY4XUJ7UKS3TE3VY6UIKENILEPUJ/ Code of Conduct: http://python.org/psf/codeofconduct/