[Tutor] understanding **kwargs syntax
Peter Otten
__peter__ at web.de
Thu Sep 8 13:23:30 CEST 2011
John wrote:
> Following up on this...
>
> Why does pylint seem to think it is a bad idea?
>
> Description Resource Path Location Type
> ID:W0142 plot_ts_array_split_x: Used * or **
> magic tsplot.py /research.plot line 299 PyLint Problem
I would guess it's a readability concern. Consider a simple function
def f(x, y=0):
print x + y
for a in [1], "ab", "abc":
f(*a)
Can you tell what will be printed immediately? For me
f(1)
f("a", "b")
f("a", "b", "c")
is much easier to predict.
That said, there are valid usecases for * and ** "magic", and of course
pylint cannot take the tradeoffs into account. Therefore don't take pylint's
warnings as gospel.
PS: the exception is intentional
More information about the Tutor
mailing list