On Sat, Jan 26, 2019 at 10:20:11AM -0800, Christopher Barker wrote: > My first thought was that function return tuples, so you could document > that your function should be called as such: > > x = fun()[0] > > but, alas, tuple unpacking is apparently automatically disabled for single > value tuples (how do you distinguish a tuple with a single value and the > value itself??)
The time machine strikes again. We have not one but THREE ways of doing so (although two are alternate ways of spelling the same thing): py> def func(): ... return [1] ... py> (spam,) = func() # use a 1-element tuple on the left py> [spam] = func() # or a list py> spam 1 py> spam, *ignore = func() py> spam 1 py> ignore [] But if you're extracting a single value using subscripting on the right hand side, you don't need anything so fancy: py> eggs = func()[0] # doesn't matter how many items func returns py> eggs 1 -- Steve _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/