Function __defaults__
Terry Reedy
tjreedy at udel.edu
Sun Apr 24 12:48:49 EDT 2011
On 4/24/2011 5:58 AM, Steven D'Aprano wrote:
> Consider this in Python 3.1:
>
>
>>>> def f(a=42):
> ... return a
> ...
>>>> f()
> 42
>>>> f.__defaults__ = (23,)
>>>> f()
> 23
>
>
> Is this an accident of implementation, or can I trust that changing
> function defaults in this fashion is guaranteed to work?
Interesting question. It seems not to be documented, so I would not
count on anything. This is a bit of a gray area, and if you get no
answer here, try pydev list, perhaps as a request that special names be
more completely documented, even is just as implementation details
subject to change.
--
Terry Jan Reedy
More information about the Python-list
mailing list