我想打印一行数字,然后让它换行并继续计数..即日历..
现在我有
numbers = [1, 2, 3, 4, 5];
print(*numbers, sep=' ')
Sun Mon Tues Wed Thurs Fri Sat
1 2 3 4 5 6 7
但现在我需要它来创建一个新行并继续.. 我可以轻松地做到这一点吗?如果我把所有代码都写出来,我的代码会非常庞大和困惑。
请您参考如下方法:
在 Python 2.*. 中,以下代码将打印从 1 到 31 的数字,每行 7:
columns = 7
for i in range(1, 32):
if i % columns != 0:
print i,
else:
print i
注意打印 i,并打印 i。逗号抑制换行符。当我想开始一个新行时,我省略了逗号。另一种开始新行的方法是打印一个空字符串:
print ''
在 Python 3.* 中,打印被更改为函数
print(x, end=" ") # Appends a space instead of a newline
或
print(x), # this will still print a space, but not a newline
解决方案包括编号justification奖金将是:
for i in range(1, 32):
if i%column != 0:
print(str(i).rjust(3)),
else:
print(str(i).rjust(3))
结果:
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
您可以使用 str.ljust()、str.center() 函数来获得您想要的理由。
另一种打印数字的方法:
import sys
sys.stdout.write(str(i))
print() 函数还提供了 sep 参数,可以指定要打印的各个项目应该如何分隔。这也可以给你一个想法。
