3 ms·
I've been using Python for 7+ years, and I had no idea parameter tuple unpacking was a thing. Never once seen any code that uses it, or seen anyone mention it.
by orf 11y ago
I've been using Python for 7+ years, and I had no idea parameter tuple unpacking was a thing. Never once seen any code that uses it, or seen anyone mention it. If you think the (rightful) removal of a hardly used feature[1] that has some big problems is a blocking issue then I feel sorry for you. Py3 is awesome.
1. https://www.python.org/dev/peps/pep-3113/ https://www.python.org/dev/peps/pep-3113/
- dvlsg 11y agoInteresting. Javascript is actually adding something very similar, calling it destructuring. It's actually quite handy - although admittedly more handy for destructuring object arguments than array arguments.
- ben336 11y agoPython 2 & 3 have destructuring. This is talking about having def fxn(a, (b, c), d): pass Be a valid function signature. So the destructuring is held in the function definition. Python 3 will still allow def fxn(a, x, d): (b, c) = x pass Both Python and ES6 JavaScript allow destructuring arrays: //javascript let [x, y] = [1,2] #python [x, y] = [1,2] (x, y) = (1,2)
- Arnavion 11y agoES6 does allow that via destructuring - https://babeljs.io/repl/#?experimental=true&evaluate=true&loose=false&spec=false&playground=true&code=function%20fxn(a%2C%20%5Bb%2C%20c%5D%2C%20d)%20%7B%0A%20%20console.log(a%2C%20b%2C%20c%2C%20d)%3B%0A%7D https://babeljs.io/repl/#?experimental=true&evaluate=true&lo... function fxn(a, [b, c], d) { console.log(a, b, c, d); }
- wfunction 11y ago> If you think the (rightful) removal of a hardly used feature[1] that has some big problems is a blocking issue then I feel sorry for you. Uh, thanks? I would call it anything but "rightful". Making life harder for introspection tools is hardly a rightful reason for removing a core language feature. The code is what most developers are trying to develop, not the introspection tools.
- orf 11y ago> Making life harder for introspection tools is hardly a rightful reason for removing a core language feature Well that's one reason yes, and by itself not really a good enough one. But if you read the PEP there are another 4 good reasons that you omitted from your comment, why is that?
- wfunction 11y ago> Well that's one reason yes, and by itself not really a good enough one. But if you read the PEP there are another 4 good reasons that you omitted from your comment, why is that? Because the other reasons were twice as horrible. "No loss of abilities"? Uh, you can't do this in lambdas anymore. "Exception to the rule"? Who cares? It was useful and readable, that's all that matters. "Uninformative Error Messages"? This has never been a pain point for me. If you don't like it then no one forced you to use it... "Little Usage"? Well I guess everyone matters but me. Which is fine, but then you shouldn't wonder why it would tick me off.