Tkinter aus Jupyter Notebook

Fragen zu Tkinter.
Antworten
Pascal80
User
Beiträge: 1
Registriert: Samstag 8. Dezember 2018, 12:10

Hallo zusammen,

ich verwende Jupyter Notebook als Entwicklungsumgebung und habe Schwierigkeiten mit ALLEN Python Modulen, die externe Fenster öffnen möchten.

Ich führe z.B. folgendes aus:

import tkinter as tk
fenster = tk.Tk()
label = tk.Label (master=fenster, text="Hallo, wie gehts?...")
label.pack()
fenster.mainloop()

Das Fenster öffnet sich und sieht auch sonst OK aus.
Wenn ich das Fenster aber nun schließe crashed Python komplett. "Python wurde unterwartet beendet."

Wenn ich das Fenster nicht anfasse sondern die Ausführung der aktiven Zelle mit dem Code im Jupyter stoppe, bleibt das Tkinter Fenster sichtbar - aber eingefroren und auch jetzt muss ich Python komplett Neustarten.

Gleiches Verhalten habe ich auch bei Turtle und Pygame - die aber wahrscheinlich beide Tkinter verwenden. Daher vermute ich dort mein Problem.

Wenn ich den gleichen Code aus PyCharm heraus ausführe, funktioniert es ohne Probleme...

Ich arbeite unter MacOS Mojave

Was ansonsten noch zu sagen wäre:
You are using Jupyter notebook.
The version of the notebook server is: 5.5.0
The server is running on this version of Python:
Python 3.6.4 (v3.6.4:d48ecebad5, Dec 18 2017, 21:07:28)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]

Ich bin dankbar für jeden Hinweis!

Viele Grüße, Pascal
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

Jupyter ist toll, aber keine ordinäre Entwicklungsumgebung. Das ist zum ausprobieren und dokumentieren gedacht, mit interaktivem Code der als UI den Browser benutzt.

Entweder baust du deinen Code so um, dass er auch den Browser benuzt, durch die vorhanden interaktionsmöglichkeiten.

Oder du benutzt eine richtige IDE/Editor.
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

Nachtrag: du benutzt ja pycharm. Damit geht’s, und anders wird es auch nicht werden. Jupyter ist nicht dazu gedacht, mehrere frontends gleichzeitig zu unterstützen.
Benutzeravatar
ThomasL
User
Beiträge: 1366
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

Hallo Pascal,
obgleich ich ein großer Freund von Jupyter Lab bin und vieles auf die Schnelle darin code, wie z.B. die aktuellen täglichen Challenges bei #AdventOfCode oder
Data Analysis mit Pandas, Numpy und Matplotlib, oder Machine Learning mit Scikit-Learn, Tensorflow und Keras, kann ich dir aus eigener Erfahrung nur empfehlen,
bei jeglichen Projekten mit GUI darauf zu verzichten und bei deiner IDE Pycharm zu beiben oder einen reinen Code Editor wie z.B. Sublime Text oder Atom zu verwenden.
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
Antworten