该textwrap.dedent功能允许在源中使用正确的缩进开始,然后在使用前从文本中剥离。
正如其他一些人所指出的那样,这是一个额外的函数调用。在决定将这些文字放在代码中的位置时考虑到这一点。
import textwrapdef frobnicate(param):""" Frobnicate the scrognate param.The Weebly-Ruckford algorithm is employed to frobnicatethe scrognate to within an inch of its life."""prepare_the_comfy_chair(param)log_message = textwrap.dedent("""\Prepare to frobnicate:Here it comes...Any moment now.And: Frobnicate!""")weebly(param, log_message)ruckford(param)
\日志消息文本中的尾部是为了确保换行符不在文字中; 这样,文字不会以空行开始,而是从下一行开始。
返回值textwrap.dedent是输入字符串,在字符串的每一行上都删除了所有常见的前导空格缩进,这意味着log_message除了进一步缩进的第三行之外,上面的值将被刷新。