Python 从文本文件读取时如何将带括号的字符串转换为浮点
我有一个文本文件,我试图读取和接收带括号的字符串,并将其转换为浮点数组 文本文件的内容如下:Python 从文本文件读取时如何将带括号的字符串转换为浮点,python,Python,我有一个文本文件,我试图读取和接收带括号的字符串,并将其转换为浮点数组 文本文件的内容如下: [0.1, 0.4242230677806444] 以及我使用以下脚本从文本文件中读取的字符串: testsite_array = [] with open('BestIndividuals_Gen.txt') as my_file: for line in my_file: testsite_array.append(line) 给出一个字符串,如“[0.1,0.4242
[0.1, 0.4242230677806444]
以及我使用以下脚本从文本文件中读取的字符串:
testsite_array = []
with open('BestIndividuals_Gen.txt') as my_file:
for line in my_file:
testsite_array.append(line)
给出一个字符串,如“[0.1,0.4242230677806444]”,但如何将带括号的字符串转换为浮点数组?您可以通过两个步骤完成此操作
string_数组=“[0.1,0.4242230677806444]”
#第一步转换为字符串数组
as_array=string_array.strip('][').split(','))
#第二步将字符串数组转换为浮点
as_float_array=[as_array中x的float(x)]
或者,您可以使用库ast
import ast
string_array = "[0.1, 0.4242230677806444]"
as_float_array = ast.literal_eval(string_array)
另见:
它是有效的JSON(!?),因此您可以
JSON.load
It…尝试ast.literal\u eval()
再看一眼,您就有误导性了。您并没有真正得到列表的字符串表示形式。您有一个实际的列表,可以向其中添加字符串。您可以通过执行testsite\u array.append(float(line.strip())将它们转换为浮点数
非常有用,谢谢!