On Wed, Oct 3, 2018 at 9:29 AM Anders Hovmöller <bo...@killingar.net> wrote: >>> foo(=a, =1+bar) > >> Unfortunately, that won't help with Jonathan's inital example >> expression "big_array[5:20]" as it's not a valid keyword. > > I didn't understand that. The example you are referring to is > print('big_array[5:20] =', big_array[5:20]) > > Nothing is a keyword in that example or in my example. My suggestion is that > we could do: > my_func(=big_array[5:20]) > > And it would be compile time transformed into > my_func(**{'big_array[5:20]': big_array[5:20]}) > > and then my_func is just a normal function: > > def my_func(**kwargs): > Whatever
You're right, that case will work. I was thinking of In [1]: foo(a+b=1) File "<ipython-input-1-61f24dcb4c20>", line 1 foo(a+b=1) ^ SyntaxError: keyword can't be an expression _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/