Creating slice notation from string

Bob van der Poel bob at mellowood.ca
Wed Sep 2 18:55:10 EDT 2009


> For a one-liner:
>
>    x[slice(*map(int, x[1:-1].split(':')))]

Thanks.

Almost works :)

For s="[2]" and s="[1:2]" it's fine. But, if I have

s = "[:2]" then I get:

>>> x[slice(*[int(i) for i in s.strip("[]").split(":")])]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: ''

Similar problem with  [2:].

Ideas?



More information about the Python-list mailing list