使用格式的Python多行对齐

特拉维斯

背景:

进行数据清理时,我想在行中打印我的arg名称及其值。但是args的名称长度不同,因此其值也不同。为了清楚起见,我想在每行中将arg的名称左对齐,并将arg的值右对齐。

例如,我想要如下结果:

输出:

Arg1               :           value1
Arg2222222222222222:           value2
Arg3               : value33333333333

当前方法:

假设我有3个args和3个值。

name_list = ['Arg1','Arg2222222222222222','Arg3']
value_list = ['value1', 'value2', 'value33333333333']

使用以下代码,我可以清楚地打印出来。

码:

name_list = ['Arg1','Arg2222222222222222','Arg3']
value_list = ['value1', 'value2', 'value33333333333']
padding1 = max(map(len, name_list))
padding2 = max(map(len, value_list))
print("padding1 = {}, padding2 = {}".format(padding1,padding2))
for num in range(len(name_list)):
    print('{0}: {1}'.format(name_list[num].ljust(padding1), value_list[num].rjust(padding2)))

输出:

padding1 = 19, padding2 = 16
Arg1               :           value1
Arg2222222222222222:           value2
Arg3               : value33333333333

题:

我们可以使用更少的代码来实现相同的目标吗?或者,我们可以更具体地做到这一点吗?

伙计们,谢谢您的帮助!

一些引用

在python中打印时的字符串对齐

python 3字符串格式(对齐)

J ... S

不多,但是如果使用fstrings,则可以

for name, value in zip(name_list, value_list):
    print(f'{name:<{padding1}}:{value:>{padding2}}')    #fstring version

<>分别是左,右对齐。

输出将是

Arg1               :          value1
Arg2222222222222222:          value2
Arg3               :value33333333333

看到这个

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Python的QTextEdit中使用格式对齐文本

来自分类Dev

在Python中读取格式化的多行

来自分类Dev

在Python中读取格式化的多行

来自分类Dev

在电子邮件python中发送多行熊猫数据帧,最好使用html格式

来自分类Dev

如何使用Python格式化带有三引号的多行字符串?

来自分类Dev

python fstring格式未对齐。是字体吗?

来自分类Dev

python打印格式umlaut右对齐

来自分类Dev

使用CSS将按钮中的多行文本居中对齐

来自分类Dev

UILabel多行顶部对齐

来自分类Dev

CSS多行标签对齐

来自分类Dev

多行右对齐元素

来自分类Dev

使用Python doctest的多行语句

来自分类Dev

用python格式化多行字符串

来自分类Dev

使用条件格式突出显示多行中的重复项

来自分类Dev

python 3字符串格式(对齐)

来自分类Dev

Python-格式化打印以对齐特定列

来自分类Dev

在Bokehs HoverTool / tooltips中设置文本对齐格式-Python

来自分类Dev

Python格式,打印对齐,但写在文件上的文档变形

来自分类Dev

使用xlsxwriter进行居中对齐(无条件格式)

来自分类Dev

使用sprintf在php中格式化数字右对齐

来自分类Dev

使用 matplotlib 图例中的格式进行文本对齐

来自分类Dev

ttk :: label多行格式

来自分类Dev

水平对齐多行中的元素

来自分类Dev

Resharper 多行分配对齐

来自分类Dev

网格自动对齐到多行

来自分类Dev

如果多行,链接不对齐

来自分类Dev

使用cout以某种格式打印数字(左对齐和右对齐)

来自分类Dev

跨多行分布时,Python字符串的格式未达到预期的格式

来自分类Dev

更改格式并对齐计数