[Python-Dev] list splicing
Karl Chen
quarl at NOSPAM.quarl.org
Mon Sep 19 03:50:14 CEST 2005
Hi, has anybody considered adding something like this:
a = [1, 2]
[ 'x', *a, 'y']
as syntactic sugar for
a = [1, 2]
[ 'x' ] + a + [ 'y' ].
Notes:
- This is a common operation
- To me, the splicing form looks much better than the
concatenation form
- It can be implemented more efficiently than a bunch of list
concatenations
- This would be similar to the "apply" feature [ foo(*a) ]. The
'*' operator is reminiscent of dereferencing operators in
C-derived languages. Alternatively it could be '@', like perl's
implicit array splicing, and Lisp's ',@' in backquoted lists.
- (I know "splicing" traditionally refers to something else in
Python, but other languages refer to this as splicing, and the
English definition of "splice" applies better to this.)
--
Karl 2005-09-18 18:26
More information about the Python-Dev
mailing list