On 2014-07-05 11:17, Gregory Ewing wrote:
> > PEP8 suggests using this style of method invocation:
> > obj.method(foo,
> > bar,
> > baz)
> > which is an effect impossible to do correctly with tabs alone.
> Yes, PEP 8 is self-contradictory in that regard.
> I also happen to think that recommendation is insane
> for other reasons as well, and cheerfully ignore it.
To be fair, in the same section that example is given, it also
# More indentation included to distinguish this from the rest.
var_one, var_two, var_three,
# Hanging indents should add a level.
foo = long_function_name(
both of which can be done with arbitrary indentation without the need
to mix tabs+spaces or use a non-integer multiple of
indentation-spaces. I just use these two in all instances and (as
you, Greg, advise), "cheerfully ignore [the first form]"
The only time I intentionally violate the "don't do these" section
# Arguments on first line forbidden when not using vertical alignment.
foo = long_function_name(var_one, var_two,
is when defining options in optparse:
as I find that a little easier to read when I'm scanning large blocks
of parser.add_option(...) calls, having the option stick out to the