如何在 python 中打印时正确对齐数据



我写了一个python代码来打印不同列中的名称和年龄。姓名和年龄存储在单独的列表中。问题是,数据在打印时对齐不正确。我希望数据在每一列中正确对齐。请建议如何修改代码以获得正确的输出。

name=['pav sunny','sham sunny','mala','shalu']
age=[25,56,52,50]
print('''NAMEttAGEn''')
for i in range(len(name)):
      print(name[i],'tt',age[i])

好吧,你得到最长的名字和max(),然后是最长名字的长度,然后你做一些.ljust().rjust(),就是这样,例子:

name=['pav sunny','sham sunny','mala','shalu']
longest_name = max(name, key=len)
max_lenght = len(longest_name)
age=[25,56,52,50]
print('NAME'.ljust(max_lenght, ' '), 'tt', 'AGE')
for i in range(len(name)):
      print(name[i].ljust(max_lenght, ' '), 'tt', str(age[i]).rjust(3,' '))

这将输出:

NAME             AGE
pav sunny         25
sham sunny        56
mala              52
shalu             50

最新更新