Python的多行参数.format。格式

时间:2017-04-13 05:47:18

标签: python string string-formatting

我希望能够像这样打印字符串:

text1 v1 text2 v3
      v2       v4

其中vi是变量。我试过这个:

"text1 {} text2 {}".format("v1\nv2", "v3\nv4")

但是,可以预见,这会给出输出

text1 v1
v2 text2 v3
v4

因为format的第一个参数中的换行符适用于整行。

有没有很好的方法将多行参数传递给format而不会破坏整个格式化的字符串?

2 个答案:

答案 0 :(得分:2)

pip install tabulate

Python中的漂亮表格数据,库和命令行 效用

from tabulate import tabulate
table =[["text1", "v1", "text2", "v3"],["", "v2", "", "v4"]]
print(tabulate(table))

“table”是父列表,它的元素将是要打印的表的行。

答案 1 :(得分:1)

你实际上可以这样做

<Button Content="{StaticResource Icon}"/>

OR

In [1]: print "text1 {} text2 {}\n      {}       {}".format("v1", "v3", "v2", "v4")
text1 v1 text2 v3
      v2       v4

In [2]: print "text1\t{}\ttext2\t{}\n\t{}\t{}".format("v1", "v3", "v2", "v4") text1 v1 text2 v3 v2 v4 表示标签,\t表示新行。