I'm trying to convert a string to list, and I've tried split
and findall
but no luck. Also, I'd like to avoid for
loops....
Sample:
import re
string2list = "[{u'name': u'a', u'number': u'123', u'addr': u'123
sunshine'}, {u'name': u'b', u'number': u'456', u'addr': u'123 sunset'}]"
print re.findall('[^},]+},', string2list)
print re.split('[},]', string2list)
print re.split('[},] + }', string2list)`
Desired output is a list of the original string:
[{u'name': u'a', u'number': u'123', u'addr': u'123
sunshine'}, {u'name': u'b', u'number': u'456', u'addr': u'123 sunset'}]
EDIT: Python version <=2.7.
EDIT 2:
This almost works, just missing }
:
print string2list.replace('[', '').replace(']', '').split('}')
EDIT 3:
Using eval
.