首页 > 解决方案 > Python - 在屏幕左侧的给定位置打印

问题描述

以下代码:

i1, i2, i3 = 1234, 45, 856
print(f"{i1:<5}{i2:<5}{i3}")

显示:

1234 45   856

这很好,但我想做的是在屏幕左侧的给定位置显示每个整数。

如果可能的话,我也想继续使用 f 字符串,而不是 C 风格的格式。

这将使我能够轻松打印出对齐良好的内容,例如:

 (1234)   (45)    (856)
 (12)     (45744) (844456)

当然,用 f-string 添加这样的括号是可能的,但这有点噩梦。在打印的行上提供硬编码位置会容易得多

顺便说一句,使用整数只是一个例子,我希望该解决方案适用于任何类型(浮点数、布尔值、数组......)。

标签: python

解决方案


我最终找到了一种解决方法,其中包括使用封装的 f 字符串:

i1, i2, i3 = 1234, 45, 856
print(f'{f"({i1})":<10}{f"({i2})":<10}{f"({i3})":<10}')
i1, i2, i3 = 12, 454, 8564
print(f'{f"({i1})":<10}{f"({i2})":<10}{f"({i3})":<10}')

输出:

(1234)    (45)      (856)     
(12)      (454)     (8564)   

推荐阅读