For data storage purposes I am trying to recover lists of floats from a .txt file. From the string like:
a = \'[1.3, 2.3, 4.5]\'
I want to recover:<
well if you are sure that your input data is of type, a = '[1.3, 2.3, 4.5]' then you could use the eval command and assign it to same or a different variable.
a = '[1.3, 2.3, 4.5]'
b=eval(a)
print(b.__class__) # to know if b is of type list or not
You can also use a more manual way:
[eval(x) for x in '[1.3, 2.3, 4.5]'.strip("[").strip("]").split(",")]
Out[64]: [1.3, 2.3, 4.5]
You could use json
import json
a = '[1.3, 2.3, 4.5]'
json.loads(a)
Use the ast module.
Ex
import ast
print(ast.literal_eval('[1.3, 2.3, 4.5]'))
Output:
[1.3, 2.3, 4.5]
a = a.split(",")
a[0] = a[0][1:]
a[-1] = a[-1][:-1]
a = [float(i) for i in a]
This should work :)