将逗号分隔的浮点字符串转换为列表?

2024-10-01 13:38:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要定义一个函数txtnum(L),它将一个逗号分隔的浮点字符串(如"1.5,2.5,3.5")作为参数,并将其转换为一个列表[1.5, 2.5, 3.5]。在

我尝试过使用.split().join()map()等,但无法获得任何返回不包含引号的列表的内容。我对Python还很陌生,有点迷路了。在

我该怎么做呢?在


Tags: 函数字符串map内容列表参数定义引号
3条回答

1.5,2.5,3.5在Python中是一个有效的tuple文本(不带括号,是的,但不重要),因此可以在其上使用^{}

In [1]: import ast

In [2]: s = '1.5,2.5,3.5'

In [3]: ast.literal_eval(s)
Out[3]: (1.5, 2.5, 3.5)

如果你真的需要一份清单,那也很简单:

^{pr2}$

试试这个:

s = "1.5,2.5,3.5"
strArr = s.split(',')
import numpy as np
x = np.array(strArr, dtype='|S4')
arrFloat = x.astype(np.float)
print arrFloat

您需要转换被拆分变量的数据类型,因为单独拆分字符串会给您一个字符串列表。在

>>> s = "1.5,2.5,3.5"
>>> [float(i) for i in s.split(',')]
[1.5, 2.5, 3.5]
>>> 

或者

^{pr2}$

相关问题 更多 >