ホームページ >バックエンド開発 >Python チュートリアル >Python は複数行の文字列からグローバル インデントを削除できますか?

Python は複数行の文字列からグローバル インデントを削除できますか?

DDD
DDDオリジナル
2024-10-24 12:15:291026ブラウズ

Can Python Remove Global Indentation from Multiline Strings?

Python で複数行の文字列からグローバル インデントを削除する

Python では、削除する必要があるグローバルな左インデントを持つ複数行の文字列が発生する場合があります。これは、追加のインデントを導入する関数または他のコード ブロック内で文字列が宣言されている場合に発生する可能性があります。

質問:

Python には、追加のインデントを導入する組み込み関数が提供されていますか?複数行文字列のグローバル インデント?

答え:

この特定のタスク用の組み込み関数はありませんが、Python 標準ライブラリは textwrap を通じてソリューションを提供します。 .dedent() function.

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。