Python 可以從多行字串中刪除全域縮排嗎?

DDD
發布: 2024-10-24 12:15:29
原創
940 人瀏覽過

Can Python Remove Global Indentation from Multiline Strings?

在Python 中刪除多行字串的全域縮排

在Python 中,您可能會遇到需要刪除具有全域左縮排的多行字串。當在函數或其他引入額外縮排的程式碼區塊中宣告字串時,可能會發生這種情況。

問題:

Python 是否提供了可以刪除縮排的內建函數多行字串的全域縮排?

答案:

雖然沒有用於此特定任務的內建函數,但 Python 標準函式庫透過 textwrap 提供了解決方案.dedent() 函數。

textwrap.dedent() 將多行字串作為輸入並刪除其所有行的公共縮排。這允許您刪除任何不需要的全域縮排。

範例:

考慮以下具有全域4 空格縮排的字串:

<code class="python">s = """
    Controller = require 'controller'

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

        constructor: ->
            Controller.mix @
"""</code>
登入後複製

使用textwrap.dedent(),您可以如下刪除全域縮排:

<code class="python">import textwrap

result = textwrap.dedent(s)</code>
登入後複製

這將產生以下刪除縮排的輸出:

Controller = require 'controller'

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

    constructor: ->
        Controller.mix @
登入後複製

以上是Python 可以從多行字串中刪除全域縮排嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!