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中文網其他相關文章!