Dear Python community,

I am a heavy python user in numerical simulation.

In python 3.8, we will have a new syntax `:=` that could assign values to
variables as part of larger expression like,

```

if (n:=len(a)) > 10:

....

```

On the other hand, I also think that it would be useful if `:=` could be
used in function argument, so that a local variable created inside a
function could be returned **optionally**, for example,

```

def func(arg1, arg2, karg1=karg1_default, karg_return:=karg_return):

...

karg_return = 3

...

return func_output


# normal calling of func() without returning variable karg_return

# in this way, karg_return:=karg_return is not used and karg_return is only
simply a local variable in func()

output = func(2,3,karg1=4)


# calling func() with using the karg_return argument

# in this way, value of the local variable karg_return in func() is created
and "passed" to variable a

output = func(2,3,karg1=4,a:=karg_return)

print(a) # a = 3

```


Is it possible to add this new feature?


Thanks for your attention to this matter.

Huang Y.W.
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/ZN5XM5MSHAAN4U3VBAEBXUJB4ZUN6SUP/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to