首頁 > 後端開發 > Python教學 > 如何在 Python 中取消多行字串的縮排而不失去可讀性?

如何在 Python 中取消多行字串的縮排而不失去可讀性?

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

How to Unindent Multiline Strings in Python Without Losing Readability?

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

Python 中的多行字串通常需要縮排以提高可讀性和組織性。然而,當嵌入到函數中時,這種縮排變得過多。出現一個常見問題:「Python 有內建函數來刪除這種全域縮排嗎?」

解決方案:

雖然Python 沒有專用的內建函數-in函數用於取消多行字串縮進,標準庫中的textwrap.dedent() 函數可以有效地實現此目的。

函數將多行字串作為輸入,並從所有超出公用文字行的空格中移除空格縮排等級。它假設第一行沒有縮進,並從其餘行中刪除前面的空格。

範例:

讓我們考慮以下具有全域4 空格的多行字串縮排:

s = """
    Controller = require 'controller'

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

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

使用textwrap.dedent( ),我們可以刪除全域縮排:

import textwrap
unindented_s = textwrap.dedent(s)
print(unindented_s)
登入後複製

輸出:

Controller = require 'controller'

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

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

如圖所示,全域縮排已被有效刪除,使字串適合在不需要縮進的函數或其他上下文中使用。

以上是如何在 Python 中取消多行字串的縮排而不失去可讀性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板