A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2004-November/049905.html below:

[Python-Dev] syntactic shortcut - unpack to variably sized list

[Python-Dev] syntactic shortcut - unpack to variably sized listNick Coghlan ncoghlan at iinet.net.au
Sat Nov 13 14:41:25 CET 2004
Martin v. Löwis wrote:
> Nick Coghlan wrote:
> 
>> x = L[i:i+n]; del L[i:i+n]; return x
>>
>> By default, n = 1, so the standard behaviour of list.pop is preserved.
> 
> 
> This default would actually change the standard behaviour: whereas it
> now returns a single element, it would then return a list containing
> the single element.

Ah, good point.

I'd see two possible fixes to that:

a) have n=0 be the default, and mean 'give me the element, not a list 
with 1 element" (L.pop(0,1) would then mean "give me a list containing 
only the first element"). That's a little magical for my taste, though.

b) have a new method called 'extract' or 'poplist' or 'popslice' or 
similar (with the behaviour given above)

Actually, if we went with the b) option, and the name 'popslice', I 
would suggest the following signature:

list.popslice(start=0, end, step=1)

i.e. L.popslice(a, b, c) is to L[a:b:c] as L.pop(a) is to L[a]

And, returning once again to the OP's example, we would have:

a, b = list.popslice(2)

Cheers,
Nick.

-- 
Nick Coghlan               |     Brisbane, Australia
Email: ncoghlan at email.com  | Mobile: +61 409 573 268
More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4