使用 [print(n) for n in list] 与 google colab

问题描述

我想用这种方式打印一个列表:

mylist = [1,2,3,4,5,6,7,8,9,1,9]
[print(n) for n in mylist]

之所以这样做是因为我想以垂直方式查看所有项目,例如在 for 循环中打印内容的方式。

我以前经常用 pycharm 做这件事,没问题。

但说到 google colab。

它给我打印了一些额外的东西:

1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
[None,None,None]

如何避免或删除 google colab 中的 None 列表。

解决方法

您可能不想使用列表推导式来打印内容;它有效,但令人困惑。 for 循环会更清晰:

mylist = [1,2,3,4,5,6,7,8,9,1,9]
for n in mylist:
    print(n)

就 google colab 中发生的事情而言,当您编写 [print(n) for n in mylist] 时,它会创建一个包含 print() 语句的所有结果的列表,这些结果都是 None。然后 Google colab 打印最后一条语句的结果。

,

您可以使用pprint来实现漂亮的打印

from pprint import pprint

lis = list(range(1000))
pprint(lis)
,

看来,您不想使用 for 循环。

您可以执行以下操作:

mylist = [1,9]
_ = [print(n) for n in mylist]

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...