我想使用 f 字符串格式化具有相同宽度的数字数组。数字可以是正数也可以是负数。
最小工作示例
import numpy as np
arr = np.random.rand(10) - 0.5
for num in arr:
print(f"{num:0.4f}")
结果是
0.0647
-0.2608
-0.2724
0.2642
0.0429
0.1461
-0.3285
-0.3914
由于负号,数字不会以相同的宽度打印出来,这很烦人。如何使用 f 字符串获得相同的宽度?
我能想到的一种方法是将数字转换为字符串并打印字符串。但是还有比这更好的方法吗?
for num in a:
str_ = f"{num:0.4f}"
print(f"{str_:>10}")