On 23/11/06, Steven D'Aprano <[EMAIL PROTECTED]> wrote:
> On Thu, 23 Nov 2006 03:13:10 -0800, Daniel Austria wrote:
>
> > Sorry,
> >
> > how can i convert a string like "10, 20, 30" to a list [10, 20, 30]
> >
> > what i can do is:
> >
> > s = "10, 20, 30"
> > tmp = '[' + s + ']'
> > l = eval(tmp)
> >
> > but in my opinion this is not a nice solution
>
>
> It is a dangerous solution if your data is coming from an untrusted source.
>
> >>> s = "10, 20, 30"
> >>> L = [x.strip() for x in s.split(',')]
> >>> L
> ['10', '20', '30']
> >>> L = [int(x) for x in L]
> >>> L
> [10, 20, 30]
>
> Or, as a one liner:  [int(x.strip()) for x in s.split(',')]

You don't need the strip()

>>> int('    10     ')
10
>>>

:)
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to