”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 如何在 Python 中取消多行字符串的缩进?

如何在 Python 中取消多行字符串的缩进?

发布于2024-11-01
浏览:263

How to Unindent a Multiline String in Python?

在 Python 中取消多行字符串的缩进

在 Python 中,使用多行字符串有时会引入不需要的全局缩进,从而使其使用起来具有挑战性所需的字符串。如果您有一个带有全局缩进的字符串并且想要删除它,则可能不会轻易想到内置函数。

解决方案:利用 textwrap.dedent()

虽然Python没有专门的内置函数来取消缩进字符串,但解决方案在于标准库中。 “textwrap”模块提供了一个名为“dedent()”的函数,专门用于从多行字符串中删除常见的前导空格。

要使用“dedent()”,只需将缩进的字符串作为参数传递,并且它会自动去除字符串中所有行中一致的任何前导空格。结果是一个干净、无缩进的字符串,允许您根据需要使用它。

示例:

考虑以下缩进字符串:

s = """
    Controller = require 'controller'

    class foo
        view: 'baz'
        class: 'bar'

        constructor: ->
            Controller.mix @
"""

使用'textwrap.dedent()',我们可以取消字符串缩进:

>>> print(textwrap.dedent(s))

Controller = require 'controller'

class foo
    view: 'baz'
    class: 'bar'

    constructor: ->
        Controller.mix @

如您所见,全局 4 空格缩进已被删除,从而生成一个可供进一步处理或操作的字符串。

版本声明 本文转载于:1729741959如有侵犯,请联系[email protected]删除
最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3