如何使用1行代码打印一个由1到9从示例中的数字组成的正方形?

问题描述

我需要在1行中编写代码,该代码显示以下内容

0123456789
1234567890
2345678901
3456789012
4567890123
5678901234
6789012345
7890123456
8901234567
9012345678

我这样做了

print([print(i) for i in range(10)])

但是此代码是完全错误的,输出为:

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

我认为我应该使用map()lambda,但我不知道该怎么做,我只是在学习...

解决方法

print("\n".join([("".join(str((i+j)%10) for i in range(10))) for j in range(10)]))

请注意,打印函数返回None,这就是您None打印多次的原因,并且您需要嵌套循环才能打印此2D数组。

相关问答

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