我目前仍然遇到这个问题。 我将首先解释一下我希望程序做什么。
我有这段代码:
rij4 = []
rij3 = []
rij2 = []
rij1 = list (range(1,16))
print("{}".format(rij1))
for x in range(0,14):
cijfer = int((rij1[x] * rij1[x+1]) // (rij1[x+1] - rij1[x]))
rij2.append(cijfer)
print(rij2)
for x in range(0,13):
cijfer = int((rij2[x] * rij2[x+1]) // (rij2[x+1] - rij2[x]))
rij3.append(cijfer)
print(rij3)
这将导致列表被打印,但数字需要站在每个人的上方。此外[]需要在印刷品中消失。
所以,例如,我想要打印出来:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
2 6 12 20 30 42 56 72 90 110 132 156 182 210
3 12 30 60 105 168 252 360 495 660 858 1092 1365
非常感谢您的帮助!
答案 0 :(得分:8)
您可以使用格式来实现您想要的效果。您可以使用以下代码填充带x
字符的整数' '
:
"{: 3d}".format(x)
通过预先添加空格来填充x
到3位数。另外,要打印由单个空格分隔的列表l
,您可以执行" ".join(l)
。现在如果你将两者结合起来:
print(" ".join(["{: 3d}".format(x) for x in rij3]))
这或多或少是你想要的(可能你需要在你想要的地方添加换行符)。