Heim  >  Artikel  >  Backend-Entwicklung  >  Kann Python globale Einrückungen aus mehrzeiligen Zeichenfolgen entfernen?

Kann Python globale Einrückungen aus mehrzeiligen Zeichenfolgen entfernen?

DDD
DDDOriginal
2024-10-24 12:15:29930Durchsuche

Can Python Remove Global Indentation from Multiline Strings?

Globale Einrückung aus mehrzeiligen Zeichenfolgen in Python entfernen

In Python stoßen Sie möglicherweise auf mehrzeilige Zeichenfolgen mit globaler linker Einrückung, die entfernt werden muss. Dies kann auftreten, wenn Zeichenfolgen innerhalb von Funktionen oder anderen Codeblöcken deklariert werden, die zusätzliche Einrückungen einführen.

Frage:

Stellt Python eine integrierte Funktion bereit, die das entfernen kann? globale Einrückung einer mehrzeiligen Zeichenfolge?

Antwort:

Obwohl es für diese spezielle Aufgabe keine integrierte Funktion gibt, bietet die Python-Standardbibliothek eine Lösung durch den Textumbruch .dedent()-Funktion.

textwrap.dedent() verwendet eine mehrzeilige Zeichenfolge als Eingabe und entfernt die gemeinsame Einrückung aller Zeilen. Dadurch können Sie alle unerwünschten globalen Einrückungen entfernen.

Beispiel:

Betrachten Sie die folgende Zeichenfolge mit globaler 4-Leerzeichen-Einrückung:

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

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

        constructor: ->
            Controller.mix @
"""</code>

Mit textwrap.dedent() können Sie die globale Einrückung wie folgt entfernen:

<code class="python">import textwrap

result = textwrap.dedent(s)</code>

Dies erzeugt die folgende Ausgabe mit entfernter Einrückung:

Controller = require 'controller'

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

    constructor: ->
        Controller.mix @

Das obige ist der detaillierte Inhalt vonKann Python globale Einrückungen aus mehrzeiligen Zeichenfolgen entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn