Wie kommentiere ich mehrere Zeilen im Jupyter Ipython-Notizbuch aus? [geschlossen]

267

Ich möchte einen Block mit mehreren Zeilen in Jupyter (Ipython Notebook) auskommentieren, kann aber in dieser aktuellen Version nicht herausfinden, wie das geht.
Früher befand es sich in einem der Dropdown-Menüs, ist aber nicht mehr vorhanden.
Wie können Sie mehrzeilige Codeblöcke gleichzeitig auskommentieren?

Dies ist kein Duplikat, da die im folgenden Link angegebene Lösung nicht mehr zu funktionieren scheint:
Wie kann ich den Kommentarcode im IPython-Notizbuch blockieren?

Ctrl+ /macht nichts.

chrisfs
quelle
Funktionieren automatische Klammern und Anführungszeichen? Eine frühere Ipython-Version hat diese Funktionalität verloren (zumindest war sie nicht die Standardeinstellung), aber die neueste stabile Version hat sie wieder. Ich kann mir vorstellen, dass das Kommentieren von Zeilen mit diesen und anderen Funktionen zur Codebearbeitung gebündelt ist. Möglicherweise müssen Sie ipython aktualisieren.
Drevicko
8
Die Lösung der verknüpften Frage funktioniert weiterhin mit IPython 3.0. Leider benötigen Sie ein amerikanisches Tastaturlayout, um es zu verwenden (wie in der Antwort angegeben). Bei meinem deutschen Layout hat dies nie funktioniert, daher ist die ursprüngliche Frage und Antwort weiterhin gültig.
Jakob
Ich habe eine amerikanische Tastatur.
chrisfs
Ich habe meine Antwort in der verknüpften Frage aktualisiert, um nicht-englische Tastaturlayouts zu behandeln. Versuche es.
Jakob

Antworten:

387

Ctrl+ /funktioniert für mich im Chrome-Browser unter MS Windows. Verwenden Sie auf einem Mac Cmd+ /(danke Anton K).


Bitte beachten Sie, dass /Sie die /Taste auf dem Numpad drücken müssen , wenn dies nicht sofort funktioniert hat. Bildnachweis : @DreamFlasher in Kommentaren zu dieser Frage.

user5036413
quelle
5
Funktioniert auch in Firefox.
Jacques MALAPRADE
27
Es ist Cmd + / auf Mac
Anton K
9
Dies funktioniert nicht mit Tastaturen mit finnischem Layout! Verwenden Sie eine Tastatur mit amerikanischem Layout?
Dataman
3
Für mich funktioniert das nicht, aberCtrl + #
Phi
11
Dies funktioniert nur, wenn die /Zehnertastatur verwendet wird.
DreamFlasher
56

Ich habe es noch nicht geschafft, den bestmöglichen Weg zu finden. Da ich eine Tastatur mit FinnishLayout verwende, funktionieren einige der Antworten für mich nicht (z. B. die Antwort von user5036413).

In der Zwischenzeit habe ich jedoch eine Lösung gefunden, die mir zumindest hilft, nicht jede einzelne Zeile einzeln zu kommentieren. Ich benutze Chrome browserin MS Windowsund habe andere Möglichkeiten nicht geprüft.

Die Lösung:
Es nutzt die Tatsache, dass Sie mehrere Zeilencursor in einem haben können Ipython Notebook.

Drücken Sie die AltTaste und halten Sie sie gedrückt. Der Cursor sollte seine Form in ein großes Pluszeichen ändern. Der nächste Schritt besteht darin, mit der Maus auf den Anfang der ersten Zeile zu zeigen, die Sie kommentieren möchten, und bei Altgedrückter Taste die Maus bis zur letzten Zeile, die Sie kommentieren möchten, nach unten zu ziehen. Schließlich können Sie die AltSchaltfläche loslassen und dann das #Zeichen zum Kommentieren verwenden. Voila! Sie haben jetzt mehrere Zeilen kommentiert.

Dataman
quelle
Klug. Ich habe es gerade in Firefox versucht und es hat funktioniert, musste aber mit meiner Cursorauswahl vorsichtig sein.
Michael Szczepaniak
10
Klappt wunderbar! Aber nur eine Klarstellung. Nachdem Sie das große + Zeichen durch Drücken der Alt-Taste erhalten haben, wählen Sie NICHT den gesamten Text in dem Codeblock aus, den Sie auskommentieren möchten !! Ziehen Sie einfach den Zeiger über den dünnen linken Rand des Texts und wählen Sie den Zeilenanfang in jeder der Zeilen im Block aus. Durch Drücken von # wird am Anfang jeder Zeile ein # eingefügt. Wenn Sie stattdessen den gesamten Text auswählen, wird der Text in jeder Zeile durch ein Nummernzeichen (#) ersetzt.
John Strong
4
Sie können tatsächlich den gesamten Text auswählen. Drücken Sie einfach den Pfeil nach links, um die Auswahl aufzuheben, und geben Sie dann ein, was Sie möchten. Die Zeile wird dann auf jede Zeile angewendet. :)
Matt
Ich mag es, weil es allgemeiner ist, als nur einen Teil zu kommentieren. Wissen Sie jedoch, dass man einen Teil des Codes auskommentieren kann, indem man ihn in ein dreifaches Anführungszeichen setzt (wie eine mehrzeilige Zeichenfolge)?
Arpad Horvath
1
verrückt verrückt, aber funktioniert
Prost
37

Versuchen Sie es mit /der Zifferntastatur. Ctrl+ /in Chrome funktionierte nicht für mich, aber als ich das /(Teilungssymbol) von der Zahl verwendete, funktionierte es.

Gaduks
quelle
Warum passiert das?
Xmduhan
2
Vielen Dank für die Präzisierung von NUMERIC KEYBOARD, es war der Schlüssel
Mayeul sgc
Gleich hier funktioniert ctrl+ /nicht, aber über die Zifferntastatur funktioniert es.
DreamFlasher
16

Schnelle Hinzufügung zur obersten Antwort : STRG + / ist hilfreich, da zwischen dem Hinzufügen und Entfernen von # am Anfang aller ausgewählten Zeilen hin und her gewechselt wird. Ich habe diese exakte Nuance nicht gesehen und wollte sie nur hier hinzufügen. (Dies funktionierte in Firefox Developer Edition 54.0b12 unter Windows 7).

Joseph True
quelle
11

Verwenden Sie auf einer finnischen Tastatur Ctrl+ ', um mehrere Zeilen zu kommentieren, und verwenden Sie dieselben Tasten, um die Kommentare zu entfernen.

Ubuntu 14.04 Google Chrome

imsrgadich
quelle
1
Funktioniert auch unter Windows und Google Chrome mit deutschem Layout. Strg + #
Ahue
Übrigens funktioniert das bei Spyder-Notebooks nicht.
Imsrgadich
Abkürzung zum französischen Layout jemand?
Paul Rougieux
11

TL; DR:

Verwenden des MacBook Pro mit Spanisch - ISO-Tastatur.

Lösung: Ctrl+-

Ganze Geschichte

Dies ist ein alter Beitrag, aber als ich ihn las, dachte ich über mögliche Abkürzungen nach.

Meine Tastatur ist ein lateinisches Apple MacBook Pro, das Spanisch - ISO heißt . Ich habe versucht, die Tastaturverteilung auf US-Lösung umzustellen ... das funktioniert, aber mit dieser Lösung muss ich jedes Mal die Tastatur wechseln, wenn ich kommentieren möchte, was ... scheiße ist.

Also habe ich versucht ctrl+ -und es funktioniert. Hier -befindet /sich das in einer englischen Tastatur, aber wenn Sie Cmd+ tun, -ändert sich nur der Zoom von Chrome, sodass ich Strg ausprobiert habe, das in macOS nicht so verwendet wird wie Cmd.

Meine Erkenntnis dazu wäre: Wenn ich mehr Probleme mit Verknüpfungen habe, könnte ich die ursprüngliche Verknüpfung ausprobieren, aber die Taste verwenden, wo die US-Tastatur sie haben würde.

loco.loop
quelle
6

Ich habe dies unter Mac OSX mit Chrome 42.0.2311.90 (64-Bit) versucht und dies funktioniert mit CMD + /

The version of the notebook server is 3.1.0-cbccb68 and is running on:
Python 2.7.9 |Anaconda 2.1.0 (x86_64)| (default, Dec 15 2014, 10:37:34) 
[GCC 4.2.1 (Apple Inc. build 5577)]

Könnte es sich um ein Browserproblem handeln? Haben Sie Firefox oder IE ausprobiert?

Koen
quelle
Ich habe Firefox verwendet. Ich habe einen PC mit Win 7
chrisfs
Können Sie Ihre ipython-Version wie von @drevicko erwähnt aktualisieren? Welche Version von ipython verwenden Sie? Welche Version von Python?
Koen
Aus irgendeinem seltsamen und nicht entzifferbaren Grund funktioniert Strg- / jetzt. Warum es vor einem Tag nicht funktioniert hat und jetzt funktioniert, weiß ich nicht. Ich habe meine Installation nicht geändert, FWIW Ich verwende Die Version des Notebook-Servers ist 3.0.0-f75fda4 und läuft auf: Python 2.7.8 | Anaconda 2.2.0 (64-Bit) | (Standard, 2. Juli 2014, 15:12:11) [MSC v.1500 64-Bit (AMD64)]
chrisfs
Wie schließe ich diese Frage selbst? Scheint mir selbst zu dienen, um zu antworten und meine Antwort auszuwählen, wenn die Antwort lautet, dass sie sich selbst
repariert hat
6

Fn+ Cmd+ /In Safari - Browser auf MacOS

smci
quelle
2
Cmd+ /kann auch funktionieren
Paul
4

Wählen Sie die Zeilen aus, die Sie auskommentieren möchten. Dann drücken:

Ctrl + #

Phi
quelle
3

Verwenden Sie '''am Anfang und am Ende dreifache einfache Anführungszeichen . Es wird als doc stringinnerhalb der Funktion ignoriert .

'''
This is how you would
write multiple lines of code
in Jupyter notebooks.
'''

Ich kann nicht herausfinden, wie man das in mehreren Zeilen druckt, aber Sie können irgendwo zwischen diesen Anführungszeichen eine Zeile einfügen, und Ihr Code ist in Ordnung.

Scott Weller
quelle
Das funktioniert bei mir nicht. Jupyter beschwert sich, IndentationError: expected an indented blockegal ob ich etwas zwischen den Anführungszeichen einrücke oder nicht.
Teylyn
Druckt immer noch in der Ausgabezelle aus, nicht wahr? Ich habe eine for-Schleife '\nfor column in homeData:\n homeDataColumn = homeData[column]\n print(type(homeDataColumn.values[0]))\n'
auskommentiert
Sie können dann die Zelle von 'Code' im Dropdown-Menü in 'rawNB Convert' ändern, sodass beim Ausführen der Zelle keine Ausgabe erfolgt
SherylHohman
Es beantwortet die Frage nicht.
Natacha
2

Unter MacOS 10.11 mit Firefox und einem deutschen Tastaturlayout ist es Ctrl+?

dmainz
quelle
2
Diese Antwort hat mir geholfen. Für mich hat die Tastenkombination "Befehl + ß" den Trick gemacht
Johann
Französisch Tastatur, mit dieser funktioniert.
Bohao LI
1

Ich füge die gleiche Situation hinzu und ging in ein paar Stackoverfow-, Github- und Tutorials, die komplexe Lösungen zeigen. Nichts einfaches! Einige mit "Halten Sie die Alt-Taste gedrückt und bewegen Sie die Maus, während der Cursor ein Kreuz zeigt", was nicht für Laptop-Benutzer (zumindest für mich) ist, andere mit Konfigurationsdateien ...

Ich fand es nach einer guten Nacht. Meine Umgebung ist Laptop, Ubuntu und Jupyter / Ipython 5.1.0:

Wähle / markiere einfach eine Zeile, einen Block oder etwas anderes und dann "Strg" + "/" und es ist magisch :)

Alex
quelle
1

Nachdem ich eine Weile gesucht habe, habe ich eine Lösung gefunden, um einen AZERTY Mac zu kommentieren. Die Verknüpfung istCtrl +/= key

Kevin Van Put
quelle
0

Wählen Sie die Zeilen auf Windows Jupyter Notebook und drücken Sie dann Ctrl+ #.

Sauravu
quelle
0

In der von mir verwendeten Version muss der Code noch initialisiert werden, um ihn mit STRG und / oder auskommentieren zu können. Wenn Sie den Code nicht ausgeführt haben und der Code nicht eingefärbt ist, funktioniert er nicht.

Tara Gaskin
quelle
0

Ich benutze Chrome, Linux Mint; und zum Kommentieren und Deaktivieren von Zeilenbündeln:

Strg + /

debaonline4u
quelle
-1

Wenn Sie einen Mac und keine englische Tastatur haben: Cmd- / ist immer noch einfach zu produzieren.

Befolgen Sie die folgenden Schritte:

  1. Gehen Sie einfach in die Systemeinstellungen, die Tastatur, die Registerkarte "Eingabequellen" des Mac oder wie auch immer es auf Englisch heißen mag
  2. Fügen Sie die für Englisch hinzu (wird als ABC angezeigt, seltsame Art, Englisch zu buchstabieren).

Wann immer Sie ein Cmd- / möchten, müssen Sie zur ABC-Tastatur wechseln (in Ihrer Menüzeile oben auf dem Bildschirm, wenn Sie es angekreuzt haben, um dort im angezeigt zu werden System Settings - Keyboard tab ).

Cmd und der Schlüssel links von rechts " shift key" geben Ihnen Cmd- /.

PS: Vergessen Sie nicht, zu Ihrer normalen Tastatur zurückzukehren.

Ingmar Kronfeldt
quelle