Skip to main content
 首页 » 编程设计

python之打印一行数字,然后换行继续计数

2025年05月04日8zlslch

我想打印一行数字,然后让它换行并继续计数..即日历..
现在我有

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 参数,可以指定要打印的各个项目应该如何分隔。这也可以给你一个想法。