python html 2 image (png)
Fredrik Lundh
fredrik at pythonware.com
Thu Oct 26 03:35:32 EDT 2006
joe Li wrote:
> **class Bunch(object):
> def __init__(self, **fields):
> self.__dict__ = fields
>
> p = Bunch(x=2.3, y=4.5)
> print p
>
> print p.__dict__
>
> I dont' understand the usage of the double * here, could anyone explain
> it for me?
if you're going to post questions to arbitrarily chosen threads, you
could at least change the subject (but it's a lot nicer to open a new
thread).
the "**" prefix tells Python to stuff any excess keyword arguments into
the given variable:
>>> def func(**kwargs):
... print kwargs
...
>>> func()
{}
>>> func(spam=1, egg=2)
{'egg': 2, 'spam': 1}
for more on Python's parameter syntax, see the section on "def" in the
language reference; see e.g.
http://effbot.org/pyref/def.htm
</F>
More information about the Python-list
mailing list