argument matching question
Scott David Daniels
Scott.Daniels at Acm.Org
Fri Aug 26 12:01:57 EDT 2005
Leif K-Brooks wrote:
> Learning Python wrote:
>
>>A code like this:
>>
>>def adder(**varargs):
>> sum=varargs[varargs.keys()[0]]
>> for next in varargs.keys()[1:]:
>> sum=sum+varargs[next]
>> return sum
For that function, call:
print adder(first=1, second=2, third=3)
A better function definition for python 2.4 would be:
def adder(**varargs):
return sum(varargs.values())
And a better function definition without using sum would be:
def adder(**varargs):
values = varargs.values()
if values:
total = values[0]
for element in values[1:]:
total += element
return total
else:
return 0
--Scott David Daniels
Scott.Daniels at Acm.Org
More information about the Python-list
mailing list