Python 取消缩进字符串的解决方案
Python 中的多行字符串经常面临全局缩进的挑战,其中字符串中的每一行都带有预定义的缩进左缩进。如果在函数或类中声明字符串,这种缩进可能会累积,从而使所需的输出变得复杂。
Python 不提供用于取消缩进字符串的专用内置函数。然而,标准库通过 textwrap.dedent() 函数提供了一个优雅的解决方案。此函数有效地删除多行字符串的每一行中的常见缩进。
例如,考虑以下具有 4 个空格全局缩进的多行字符串:
s = """ Controller = require 'controller' class foo view: 'baz' class: 'bar' constructor: -> Controller.mix @ """
要取消此字符串的缩进使用 textwrap.dedent(),只需将其作为参数传递,如下所示:
unindented_string = textwrap.dedent(s) print(unindented_string)
输出将是一个整齐的无缩进字符串:
Controller = require 'controller' class foo view: 'baz' class: 'bar' constructor: -> Controller.mix @
textwrap.dedent()优雅地处理取消缩进过程,确保每一行都有所需的缩进,无论其在字符串中的原始位置或多行块中是否存在其他缩进。
以上是如何在Python中有效地取消多行字符串缩进?的详细内容。更多信息请关注PHP中文网其他相关文章!