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 Thanks, john On Thu, Aug 25, 2011 at 10:44 AM, Alan Gauld <alan.ga...@btinternet.com> wrote: > On 25/08/11 09:27, John wrote: >> >> Just a quick question, >> >> is it wrong to use the *args and **kwargs ( the latter in particular) >> when DEFINING a function? > > No, in fact it's essential if you don't know in advance what arguments are > going to be passed to the function. This is very common if you are wrapping > another function that itself takes variable arguments. > >> def fest(**kwargs): >> """ a function test """ >> keys = sorted(kwargs.keys()) >> >> print("You provided {0} keywords::\n".format(len(keys))) >> for kw in keys: >> print("{0} => {1}".format(kw, kwargs[kw])) >> >> Are there some good examples of when this would be a good idea to >> implement? > > GUI frameworks like Tkinter often take variable numbers of configuration > values. If you want to wrap that with a > function of your own you can do something like(pseudocode): > > def myfunc(**kwargs): > if some interesting arg exists > do something with it > return wrappedFunc(kwargs) > > There are plenty other cases, try grepping the standard library code > for lines with def and **kwargs for some examples... > > -- > Alan G > Author of the Learn to Program web site > http://www.alan-g.me.uk/ > > _______________________________________________ > Tutor maillist - Tutor@python.org > To unsubscribe or change subscription options: > http://mail.python.org/mailman/listinfo/tutor > -- Configuration `````````````````````````` Plone 2.5.3-final, CMF-1.6.4, Zope (Zope 2.9.7-final, python 2.4.4, linux2), Python 2.6 PIL 1.1.6 Mailman 2.1.9 Postfix 2.4.5 Procmail v3.22 2001/09/10 Basemap: 1.0 Matplotlib: 1.0.0 _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor