Assume that you have string x as below:
x="['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']"
How to convert x to a list of strings in python?
['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']
Assume that you have string x as below:
x="['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']"
How to convert x to a list of strings in python?
['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']
Try:
import ast
list_ = ast.literal_eval(x)
print(list_)
output:
['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']
x="['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']"
type(eval(x)) # list
eval(x)
output : ['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']
you can use this split method
y=x.split(,)
but it will not split perfectly first you should remove the bracket and spaces like this
x = x.replace('[','')
x = x.repalce(']','')
x = x.replace(' ','')
x = x.replace("'","")
y = x.split(',')
this will do yours work
You can try the following
x="['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']"
y = eval(x)
Here :
x
is <class 'str'>
y
is <class 'list'>
You can use eval method. It is simpler!
x="['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']"
print(eval(x))
Output:
['aaa1', 'aaa2', 'aaa3', 'aaa4', 'aaa5', 'aaa6', 'aaa7', 'aaa8']