如何从实数列表中删除引号?

时间:2016-06-08 14:54:53

标签: python string list

我正在从cvs文件中读取数据,当我将数据导入列表时,它会将数字视为字符串。 这是输出:['1.0', '1.20798878439', '1.52379907139']但是我想要这样的[1.0, 1.20798878439, 1.52379907139],这样我才能处理实数而不是字符串?有什么建议吗?

2 个答案:

答案 0 :(得分:3)

this.InitializeComponent();

您只需对其进行迭代,然后将其转换为您需要的数据类型。

正如@IanAuld所指出 - 这称为type castingtype conversion

有些图书馆可以为您处理更棘手的转换 但最基本的东西是my_string_list = ['1.0', '1.20798878439', '1.52379907139'] my_int_list = [float(i) for i in my_string_list] 循环,迭代列表中的每个对象并转换它,最后将结果放在一个新列表中。

如果我要将我的答案从使用for扩展到常规for循环,它将如下所示:

list comprehensions

答案 1 :(得分:0)

您可以使用类似列表理解来轻松输入强制转换并创建新列表:

>>> [float(x) for x in ['1.0', '1.20798878439', '1.52379907139']]
[1.0, 1.20798878439, 1.52379907139]

使用变量:

>>> a = [1.0, 1.20798878439, 1.52379907139]
>>> b = [float(x) for x in a]
>>> print(b)
[1.0, 1.20798878439, 1.52379907139]

有关列表推导的更多信息: https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions