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 中国語 Web サイトの他の関連記事を参照してください。