【发布时间】:2019-10-18 14:55:54
【问题描述】:
考虑以下列表:
list1 = [['1.1','1.2'],['2.1', '2.2'],[''],...]
此列表包含带有空字符串的列表。要将这个列表列表中的所有字符串转换为浮点数,可以使用列表推导,例如:
[[float(j) for j in i] for i in list1]
(感谢to)。
但是包含空字符串的列表存在一个问题——它们会导致异常:
ValueError:无法将字符串转换为浮点数:
有没有办法在不显式使用循环的情况下使用这种列表推导?
【问题讨论】:
-
如果列表实际上为空,您将不会收到错误消息。你没有在这里画出完整的画面。
-
@cs95 你是对的,“空”列表实际上包含空字符串,我将编辑我的帖子。
-
空字符串可以忽略吗?
-
@Pynchia 是前者,如果我理解你的问题的话。
-
@cs95 是的,但这可以变成列表理解吗?我知道如果这是唯一的方法,可以事先从列表中删除空字符串。
标签: python-3.x list loops exception list-comprehension