|
Function / method parameters with * and ** in Python
In Python, you can define a function with optional parameters; if you specify a single * in front of a parameter, then that will be a tuple of all remaining unnamed values. And if you specify two *s in front of a parameter, that will be a dictionary of all remaining named parameters.
Let's see an example:
def demo(first, second, *third, **fourth):
print "first",first
print "second",second
print "third",third
print "fourth",fourth
print
demo(1,2,3,4,5,6,7)
demo(5,6,7,8,aa=9,bb=11,cc=44)
When I run that, I get
C:\gje>python onetwo.py
first 1
second 2
third (3, 4, 5, 6, 7)
fourth {}
first 5
second 6
third (7, 8)
fourth {'aa': 9, 'cc': 44, 'bb': 11}
C:\gje>
Note that * and ** parameters must be the last parameters in a function definition, and if you're going to use both of them you put the ** at the very end, after the *. (written 2007-04-04 00:39:41)
Associated topics are indexed under Y105 - Python - Functions, Modules and Packages
Some other Articles
The Holiday - unlikely romantic comedy?Wiltshire CirclesBuffering output - why it is done and issues raised in Tcl, Perl, Python and PHPGovernment pressure on me to shut up after I make the papersFunction / method parameters with * and ** in PythonB-2-B Networking, 20th April. Useful for YOUR business?Well House Manor, Melksham, Art GalleryMySQL - Password security (authentication protocol)Science Museum - larger exhibits / store, Wroughton, SwindonGolfing, Wiltshire (near Melksham)
|
2259 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46 at 50 posts per page
This is a page archived from The Horse's Mouth at
http://www.wellho.net/horse/ -
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).
|
|