请关闭,如果这是重复,但this answer不回答我的问题,因为我想打印列表,而不是列表中的元素。
例如,以下内容不起作用:
mylist = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
print(%3s % mylist)
期望的输出:
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]
基本上,如果列表中的所有项目都是n
个数字或更少,则相等的间距会在打印输出中给出每个项目n+1
个点。就像c ++中的setw
一样。假设n
已知。
如果我错过了类似的问题,请随时投票结束。
答案 0 :(得分:3)
您可以使用以下示例中的格式。如果你真的需要方括号,那么你将不得不摆弄一下
lst = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
frmt = "{:>3}"*len(lst)
print(frmt.format(*lst))
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
答案 1 :(得分:3)
items=range(10)
''.join(f'{x:3}' for x in items)
' 0 1 2 3 4 5 6 7 8 9'
答案 2 :(得分:1)
如果其他答案都不起作用,请尝试以下代码:
output = ''
space = ''
output += str(list[0])
for spacecount in range(spacing):
space += spacecharacter
for listnum in range(1, len(list)):
output += space
output += str(list[listnum])
print(output)
答案 3 :(得分:0)
我认为这是最好的,因为它允许你按照自己的意愿操纵列表。甚至数字化。
mylist = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
print(*map(lambda x: str(x)+" ",a))