On 2007-11-29, imho <[EMAIL PROTECTED]> wrote: > Siah ha scritto: >> Hi, >> >> I need to convert the string: '(a, b, "c", d, "e")' into the following >> list ['a', 'b', 'c', 'd', 'e']. Much like a csv reader does. I usually >> use the split function, but this mini-monster wouldn't properly get >> split up due to those random quotations postgresql returns to me. >> >> Please help me with this, >> Thanks, >> Sia > > One solution: > > >>> s = '(a, b, "c", d, "e")' > >>> print [x.strip('" ') for x in s.strip('()').split(',')] > ['a', 'b', 'c', 'd', 'e']
That fails when a quoted string contains commas: >>> s = '(a, b, "c", d, "e,f,g")' >>> print [x.strip('" ') for x in s.strip('()').split(',')] ['a', 'b', 'c', 'd', 'e', 'f', 'g'] I presume the correct result would be ['a', 'b', 'c', 'd', 'e,f,g'] -- Grant Edwards grante Yow! I wonder if I could at ever get started in the visi.com credit world? -- http://mail.python.org/mailman/listinfo/python-list