On Tue, 22 Mar 2005 21:43:48 +0100, Bruno Desthuilliers
<[EMAIL PROTECTED]> wrote:

>Ron a écrit :
>(snip)
>>>>def dfv( arg = value):    
>> 
>>          return arg
> >
> >>> def dfv( arg = value):
>...     return arg
>...
>Traceback (most recent call last):
>   File "<stdin>", line 1, in ?
>NameError: name 'value' is not defined
>
>And sorry, but -1 for using exec here.


Yes, I cought that myself.  So...

try: z=z
except: z=0

or 

if 'z' not in locals():
    z = 0

Ok, thinking in more incremental terms...

Why should a function not create a local varable of an argument if the
varable doesn't exist and a default value is given?

So when:

Def dfv( v=0):
        return v

>>dfv()
0           ;it creates the local copy in this case.

>>a = 25
>>dfv(a)
25          ;It used the given value as expected.

>>dfv(b)
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in -toplevel-
    dfv(b)
NameError: name 'b' is not defined

Why not let it set the local varable v to the default as it does when
no varable is specified?  

A function without a default would still give an error as expected.


:)
Ok no exec,  but what about the general syntax?

value = keyword (inputargs, command, outputargs)

I was thinking if it can be done with standard tuples, it has the
potential to be passed around easily and work from lists and
dictionaries. 

Ron

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to