使用Python 3.6中的列表推导将列表附加到列表列表中

时间:2017-07-18 00:24:07

标签: list append list-comprehension python-3.6

如果你能帮我解决这个问题,我将非常感激:

我有文件,我正在阅读和解析它的行。这行是一个字符串列表,我将这些字符串更改为浮点数,然后,我将浮点数列表附加到另一个列表列表,所以我的代码看起来像这样:

for line in file:
    #parsing code...
    [lista_flot.append(float(number)) for number in line]
    lecturas.append(lista_flot)

但是我想知道是否有一种方法可以将这些列表与列表推导一起添加到一行中,使其成为这样的:

for line in file:
    #parsin code...
    lecturas.append([lista_flot.append(float(number)) for number in line])

另外,为什么当我执行该单行时,所有值都变为Nones?

非常感谢!

1 个答案:

答案 0 :(得分:0)

您的问题是方法.append将修改其作用的列表,但它返回值None。对于列表推导,您需要将要附加的实际值作为表达式。

for line in file:
    #parsin code...
    lecturas.append([float(number) for number in line])