IPython Notebook: Datei mit GUI öffnen / auswählen (Qt-Dialog)
Wenn Sie dieselbe Analyse in einem Notizbuch für verschiedene Datendateien durchführen, kann es nützlich sein, eine Datendatei grafisch auszuwählen.
In meinen Python-Skripten implementiere ich normalerweise einen QT-Dialog, der den Dateinamen der ausgewählten Datei zurückgibt:
from PySide import QtCore, QtGui
def gui_fname(dir=None):
"""Select a file via a dialog and return the file name.
"""
if dir is None: dir ='./'
fname = QtGui.QFileDialog.getOpenFileName(None, "Select data file...",
dir, filter="All files (*);; SM Files (*.sm)")
return fname[0]
Führen Sie diese Funktion jedoch von einem Notebook aus
full_fname = gui_fname()
bewirkt, dass der Kernel abstürzt (und neu startet):
Interessanterweise funktioniert es, wenn Sie diesen 3-Befehl in 3 separate Zellen einfügen
%matplotlib qt
full_fname = gui_fname()
%matplotlib inline
aber wenn ich diese Befehle in eine einzelne Zelle stecke, stirbt der Kernel wieder.
Dies verhindert das Erstellen einer Funktion wiegui_fname_ipynb()
das ermöglicht transparent die Auswahl einer Datei mit einer GUI.
Der Einfachheit halber habe ich ein Notizbuch erstellt, das das Problem veranschaulicht:
Datei mit GUI öffnen / auswählen (Qt-Dialog)Gibt es einen Vorschlag, wie Sie einen Dialog zur Dateiauswahl in einem IPython Notebook ausführen können?