我正在尝试用一行代码打印一个9x9的乘法表。我在下面的结果中遇到了问题。
print("%s x %s = %s" % (x, y, x*y) for x in range(1, 10) for y in range(1, 10))输出:
<generator object <genexpr> at 0x1054350f0>虽然我预期它会输出:
1 x 1 = 1
1 x 2 = 2
.
.
.
9 x 9 = 81发布于 2014-08-24 20:28:16
这里有另一种方法:
>>> table = ("%s x %s = %s" % (x, y, x*y) for x in range(1, 10) for y in range(1, 10))
>>> print "\n".join(table)
1 x 1 = 1
1 x 2 = 2
.
.
.
9 x 9 = 81或者一行:
print "\n".join(("%s x %s = %s" % (x, y, x*y) for x in range(1, 10) for y in range(1, 10)))https://stackoverflow.com/questions/25471648
复制相似问题