553 Stimmen

Wie man einen Codeblock in Python auskommentiert

Gibt es einen Mechanismus, um große Blöcke von Python-Code auszukommentieren?

Im Moment sehe ich nur die Möglichkeit, Code auszukommentieren, indem ich entweder jede Zeile mit einem # oder den Code in dreifache Anführungszeichen zu setzen: """ .

Das Problem dabei ist, dass das Einfügen von # vor jeder Zeile ist umständlich und """ lässt die Zeichenkette, die ich als Kommentar verwenden möchte, in der generierten Dokumentation erscheinen.

Nach dem Lesen aller Kommentare scheint die Antwort "Nein" zu lauten.

3 Stimmen

Diese Frage wurde zuvor in Stack Overflow Frage beantwortet Warum hat Python keine mehrzeiligen Kommentare? .

0 Stimmen

Zusätzliche Richtlinien der beruflichen Praxis, "Verwenden Sie keine dreifachen Anführungszeichen", unterscheidet es von anderen Beiträgen ...

13 Stimmen

Seufz. Eine weitere nützliche und nicht doppelte Frage, die als Duplikat markiert wurde... Diese fragt nach einer Lösung, während die andere die Antwort (nämlich dass es keine Lösung gibt) als Voraussetzung für die Frage nimmt, die sie zu stellen hat.

481voto

John Feminella Punkte 292907

Python verfügt nicht über einen solchen Mechanismus. Voranstellen einer # an jede Zeile, um den Kommentar zu blockieren. Für weitere Informationen siehe PEP 8 . Die meisten Python-IDEs unterstützen einen Mechanismus, der die Blockkommentierung mit Hash-Zeichen automatisch für Sie erledigt. In IDLE auf meinem Rechner heißt es zum Beispiel Alt + 3 y Alt + 4 .

Verwenden Sie keine dreifachen Anführungszeichen; wie Sie festgestellt haben, ist dies für Dokumentationsstrings und nicht für Blockkommentare gedacht, obwohl es eine ähnliche Wirkung hat. Wenn Sie nur vorübergehend Dinge auskommentieren, ist dies als vorübergehende Maßnahme in Ordnung.

1 Stimmen

Geany hat auch dies. Rechtsklick, Format, Kommentarzeile(n).

99 Stimmen

Für Nicht-Amerikaner ist das ein "Rauten"-Zeichen.

75 Stimmen

In Notepad++ das ist Ctrl+K (v.5.9.2) für jede unterstützte Sprache

101voto

bobince Punkte 512550

Verstecken Sie die dreifachen Anführungszeichen in einem Kontext, der nicht mit einem Docstring verwechselt werden kann, z. B:

'''
...statements...
''' and None

oder:

if False: '''
...statements...
'''

23 Stimmen

Ich glaube nicht, dass das ein guter Ratschlag ist, Sie fügen Ihrem Code Komplexität hinzu, ohne einen wirklichen Nutzen zu haben. Jemand, der das liest, müsste herausfinden, warum dieser Code da ist und was er tun soll.

7 Stimmen

Was ist, wenn der Code, den Sie auskommentieren wollen, bereits Zeichenfolgen in dreifachen Anführungszeichen enthält?

1 Stimmen

Zum Glück für mich war das nicht der Fall.

99voto

canen Punkte 1580

Das einzige Mittel, das ich kenne, ist ein guter Lektor. Entschuldigung.

44 Stimmen

Offensichtlich verwenden alle echten Python-Programmierer ed, wo dieses Problem leicht mit gelöst wird: 12,31s/^/#/

3 Stimmen

Vim mit Nerdcommenter. Wählen Sie den gewünschten Block und ,c<Leertaste>

48voto

Brian R. Bondy Punkte 325712

Die einzige Möglichkeit, dies ohne dreifache Anführungszeichen zu tun, ist das Hinzufügen eines:

if False:

Und dann rücken Sie Ihren gesamten Code ein. Beachten Sie, dass der Code immer noch eine korrekte Syntax haben muss.


Viele Python-IDEs können hinzufügen # für Sie in jeder ausgewählten Zeile und entfernen sie auch beim Aufheben der Kommentare. Ebenso, wenn Sie vi o Emacs können Sie ein Makro erstellen, das diese Aufgabe für einen Codeblock übernimmt.

1 Stimmen

Der Betreiber erwähnte, dass er nicht möchte, dass die Kommentare als Doc-Strings erscheinen.

0 Stimmen

-1 zurückgezogen. Das ist eine clevere Idee, auch wenn es bedeuten könnte, dass die Kommentare Kommentare brauchen :)

3 Stimmen

Diese Lösung ist ähnlich wie das Auskommentieren des Codes, außer dass Sie vier Leerzeichen anstelle von # hinzufügen und dass Sie auch eine "if False:"-Zeile hinzufügen müssen.

43voto

marcinj Punkte 46621

In JetBrains PyCharm auf Mac verwenden Sie Command + / um einen ausgewählten Code-Block zu kommentieren/dekommentieren. Unter Windows, verwenden Sie CTRL + / .

4 Stimmen

Dies gilt auch für die PyCharm Community Edition, die frei und quelloffen ist.

0 Stimmen

Danke! Funktioniert auch mit Text Wrangler

1 Stimmen

CTRL + / unter Windows funktioniert nicht für ein schwedisches Tastaturlayout.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X