在Python中打印表
我有一个任务,在Python中创建一个10乘10的表,并且在我的打印函数中使用了末尾“\ t”来防止它创建一个新行。但是,我需要它在10个字符之后开始一个新行。我怎样才能做到这一点?这里是我的代码:在Python中打印表
product = 0
for x in range(1,11):
for y in range(1,11):
product = x * y
print(product, end="\t")
我需要它看起来像这样:
1 2 3 4 5 6 ...
2 4 6 8 10 12 ...
3 6 9 12 15 18 ...
这是使用alignement从format
方法选项。
product = 0
for x in range(1,11):
for y in range(1,11):
product = x * y
print('{:<4}'.format(product), end='')
print()
我觉得这有点过去了,现在我在我的课堂上,但我仍然会玩它,看看它是什么:)谢谢! –
我想你需要添加得到你想要的是打印新的生产线在你的内部循环,像这样:
product = 0
for x in range(1,11):
print()
for y in range(1,11):
product = x * y
print(product, end="\t")
在第三它将在10之后开始新行。 输出将如下所示: 1 2 3 4 5 6 7 8 9 10
2 4 6 8 10 12 14 16 18 20
3 6 9 12 15 18 21 24 27 30
4 8 12 16 20 24 28 32 36 40
5 10 15 20 25 30 35 40 45 50
6 12 18 24 30 36 42 48 54 60
7 14 21 28 35 42 49 56 63 70
8 16 24 32 40 48 56 64 72 80
9 18 27 36 45 54 63 72 81 90
10 20 30 40 50 60 70 80 90 100
为了好玩,t他可以做一个列表理解的单线程和join
方法
print('\n'.join(['\t'.join([str(x*y) for x in range(1,11)]) for y in range(1,11)]))
'print()'在内部循环之后。 – zondo
@zondo如果她使用Python的2.x版本怎么办?我宁愿建议'print(“”)'。 – mwarzynski
@mwarzynski:Python 2.x没有'end'关键字,因为'print'不是函数。 – zondo