首页 > 解决方案 > 使用间距 Python 格式化打印

问题描述

我试图在打印下面指定的整数和字符串时将所有值缩进并处于同一级别。我试图让空间始终保持等距。我怎么能做到这一点?

print('Consecutive monthly {} results: {}\tIndexes: {} - {}'.format('positive',14,'2019-04-01 00:00:00','2020-06-01 00:00:00'))
print('Consecutive monthly {} results: {}\tIndexes: {} - {}'.format('negative',2,'2018-02-01 00:00:00','2020-06-01 00:00:00'))

输出

Consecutive monthly positive results: 14    Indexes: 2019-04-01 00:00:00 - 2020-06-01 00:00:00
Consecutive monthly negative results: 2 Indexes: 2018-02-01 00:00:00 - 2018-03-01 00:00:00

预期输出:

Consecutive monthly positive results: 14    Indexes: 2019-04-01 00:00:00 - 2020-06-01 00:00:00
Consecutive monthly negative results: 2     Indexes: 2018-02-01 00:00:00 - 2018-03-01 00:00:00

标签: python-3.xstringprintingformatinteger

解决方案


您可以像这样指定十进制数的格式。

print('Consecutive monthly {} results: {:<2d}\tIndexes: {} - {}'.format('positive',14,'2019-04-01 00:00:00','2020-06-01 00:00:00'))
print('Consecutive monthly {} results: {:<2d}\tIndexes: {} - {}'.format('negative',2,'2018-02-01 00:00:00','2020-06-01 00:00:00'))

格式字符串中的 ':<2d' 指定要左对齐的数字,以及它应该占用的空格(以字符为单位)。


推荐阅读