Ich erstelle ein Python-Modul mit einer Funktion zum Anzeigen eines Pandas DataFrame ( my_df
).
Wenn der Benutzer das Modul in ein Jupyter-Notebook importiert, möchte ich "hübsche" Formatierungen für den DataFrame liefern, indem ich etwas wie folgt verwende:
%Vor%Wenn sich der Benutzer nicht in einem Jupyter-Notizbuch befindet, möchte ich die Textform des DataFrame anzeigen:
%Vor%Wie kann ich überprüfen, ob der Code von einem Jupyter-Notebook ausgeführt wird? Oder, wie kann ich den DataFrame in Textform von der Befehlszeile anzeigen, oder das HTML-Formular anzeigen, wenn es in ein Jupyter-Notizbuch importiert wird?
%Vor% Sie müssen nicht überprüfen, ob der Code von einem Notebook ausgeführt wird. display()
druckt Text, wenn er von der Befehlszeile aus aufgerufen wird.
test.py
:
Über die Befehlszeile:
%Vor%Von einem Jupyter Notebook:
UPDATE
Um zu überprüfen, ob Sie in einer interaktiven Ipython-Shell (Befehlszeile oder browserbasiert) ausgeführt werden, prüfen Sie, ob get_ipython
vorhanden ist. (Angepasst von den Ipython Dokumenten)
Modifiziert test.py
:
Dieser Ansatz wird:
- Pretty-Print in einem Browser Jupyter Notebook
- Text drucken, wenn er als Skript über die Befehlszeile ausgeführt wird (z. B. python test.py
)
- Wenn es in einer Python-Shell Zeile für Zeile ausgeführt wird, wird es nach dem Drucken nicht zu einer interaktiven Ipython-Shell.
Sie sollten in os.environ suchen.
Auf meinem Computer können Sie es in
sehen %Vor%Tags und Links python pandas jupyter-notebook jupyter