My one beef with the pep still is the one module per line recommendation:
"Imports should usually be on separate lines ... No: import sys, os"
Why not? I don't really spend a lot of time studying stdlib imports, nor need them on separate lines. Pyflakes will yell at me if something was not imported.
After all, one does (and is legal in the pep): from subprocess import Popen, PIPE, ... So how is that different conceptually than doing from stdlib import os, re, sys, ...
I certainly agree with separating stdlib, 3rd party libs, and your own modules by blank lines.. but why should usually trivial stdlib imports need so many lines?
If I see `from subprocess ...`, I know immediately that this module does something with subprocesses, and I don't much care about the rest of the line.
If I see `import os, sys, foo, bar...` then I don't get that information without actually inspecting the rest of the line.
The difference is minor, but skimming is valuable.
"Imports should usually be on separate lines ... No: import sys, os"
Why not? I don't really spend a lot of time studying stdlib imports, nor need them on separate lines. Pyflakes will yell at me if something was not imported.
After all, one does (and is legal in the pep): from subprocess import Popen, PIPE, ... So how is that different conceptually than doing from stdlib import os, re, sys, ...
I certainly agree with separating stdlib, 3rd party libs, and your own modules by blank lines.. but why should usually trivial stdlib imports need so many lines?