打印每行缩进

时间:2015-09-18 23:33:22

标签: python python-2.7

有没有办法在python中打印一些东西,比如说 foo = "The Title of The Message\n\tThe first paragraph of the message" 附加到每一行的选项卡,而不修改我的变量,(在此示例中为foo)。

我想要的结果是: The Title of The Message The first paragraph of the message"

我正在寻找与你做git log时类似的事情,提交的消息总是缩进

2 个答案:

答案 0 :(得分:0)

我不太清楚你在这里的期望。不,没有自动格式化工具来执行此操作。但是,您当然可以复制该值并修改 ,或打印内联更改。例如:

print foo.replace("\n", "\n\t")

string.replace返回字符串的更改副本。

答案 1 :(得分:0)

不知道有任何内置/标准方法,但您可以使用Prune's simple solutionprint foo.replace('\n', '\n\t'))执行单个选项卡,或者如果您希望对任意数量的潜在客户更加通用标签:

>>> def print_indented(n, s):
...     """Print a string `s` indented with `n` tabs at each newline"""
...     for x in s.split('\n'):
...         print '\t'*n + x
...
>>> foo = "The Title of The Message\n\tThe first paragraph of the message"
>>> print_indented(1, foo)
        The Title of The Message
                The first paragraph of the message
>>> print_indented(2, foo)
                The Title of The Message
                        The first paragraph of the message

'\t'*n位重复标签字符n次。