python html 2 image (png)

Fredrik Lundh fredrik at
Thu Oct 26 09:35:32 CEST 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 

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.


More information about the Python-list mailing list