python 使用列表理解或其他方法将列表中的 None 替换为空白?也是嵌套列表解决方案

标签 python list-comprehension

<分区>

a = [无, 无, '2014-04-27 17:31:17', 无, 无]

尝试用 '' 替换 None

试了很多次,这是我最接近的。 b= ['' for x in a if x==None] 这给了我四个 '' 但省略了日期

我认为它会是 b= ['' for x in a if x==None else x] 但不起作用。

如果像这样嵌套会怎样:

a = [[无,无,'2014-04-27 17:31:17',无,无],[无,无,'2014-04-27 17:31:17',无,无],[无,无,'2014-04-27 17:31:17',无,无]]

你还能使用列表推导式吗?

最佳答案

只需修改您的代码如下:

b = ['' if x is None else x for x in a]    #and use is None instead of == None

>>> print b
['', '', '2014-04-27 17:31:17', '', '']

Explanation

对于嵌套列表,你可以这样做:

b = [['' if x is None else x for x in c] for c in a]

关于python 使用列表理解或其他方法将列表中的 None 替换为空白?也是嵌套列表解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23321915/

相关文章:

python - 追加到 Python 中的列表理解返回 None

原始模式下的Python stdin 打印添加空格

python - 如何用更短的时间有效地比较两个巨大的文件 csv

python - 在 Python 循环中构建字典 - 列表和字典理解

python - 将整数列表转换为字符串,在 Python 中的 x 元素后仅用一个逗号

python - 元组的列表理解为我提供了一个生成器 - 为什么以及如何修改?

haskell - 如何在 Clojure 中进行列表理解?

tensorflow 中的Python_io

python - 在pyQt的textEdit中打开文本文件

python - 模块重新加载语义