Spyder und tkinter

Probleme bei der Installation?
Antworten
Python1906
User
Beiträge: 29
Registriert: Mittwoch 9. November 2016, 13:52

Hallo zusammen,
vor kurzem habe ich mir Spyder3 mit diesem Befehl unter Linux heruntergeladen:

[codebox=bash file=Unbenannt.bsh]sudo apt-get install spyder3[/code]

Jedoch habe ich folgendes Problem:


Starte ich irgendeine Pythondatei, welche Tkinter nutzt, passiert überhaupt nichts.
Keine Fehlermeldung, keine neue Fenster, nichts. Er zeigt nur an, dass er es gestartet hat.

Starte ich wiederum danach eine Datei, welche kein tkinter, sondern ein anderes Modul nutzt, wie z.B.: ein turtle-Programm,
dann zeigt es mir das Ergebnis dieses Programms, sowie alle zuvor gestarteten Pythonskripte mit tkinter an.
Das heisst dsarte ich z.B.: folgendes passiert, nichts:

[codebox=python file=Unbenannt.txt]import tkinter

root = Tk()[/code]

Starte ich dann, eine datei mit Turtle

[codebox=python file=Unbenannt.txt]
from turtle import *
speed(0)
reset()
x = -200
y = 200
while y != -200:
goto(x,y)
x = -x
y = -y
goto(x, y)
goto(0, 0)
y = -y
x = -x
y = y - 5
goto(x, y)
[/code]
dann zeigt er mir das Ergebnis und ein leeres Fenster (Ergebnis des erstes Beispielprogramms.


Zum anderen ploppt beim Start immer ein Fenster auf, wo drin steht, dass es eine neuere Version von Spyder3 gäbe, obwohl ich sie schon längst besitze.

Dahinter kommt auch noch ein fenster mit folgendem Text:

You have missing dependencies!

rope >=0.9.4: None (NOK)


Please install them to avoid this message.

Note: Spyder could work without some of these dependencies, however to have a smooth experience when using Spyder we strongly recommend you to install all the listed missing dependencies.

Failing to install these dependencies might result in bugs. Please be sure that any found bugs are not the direct result of missing dependencies, prior to reporting a new issue.


Kann mir vielleicht jemand weiter helfen??
Zuletzt geändert von Anonymous am Samstag 24. Juni 2017, 14:32, insgesamt 1-mal geändert.
Grund: Unnötige code-Tags entfernt.
BlackJack

@Python1906: Was heisst starten in diesem Fall? Innerhalb von Spyder3? Oder passiert das tatsächlich wenn Du Python-Programme eigenständig von einer Konsole aus startest?

Bei dem erstgezeigten Tk-Programm sollte auch nichts passieren. Wenn man das normal auf der Konsole startet, wird `tkinter` importiert, ein `Tk`-Objekt erstellt, und dann ist das Programm zuende und wird eben beendet. Falls ein leeres Hauptfenster aufgehen und bleiben soll, dann musst Du die Tk-Hauptschleife aufrufen, üblicherweise mit ``root.mainloop()``. Die blockiert solange bis das Hauptfenster geschlossen wird, beziehungsweise die `quit()`-Methode aufgerufen wird um die Tk-Hauptschleife zu beenden.

Wenn Du dann ein Turtleprogramm startest, wird von diesem Programm die Tk-Hauptschleife aufgerufen, beziehungsweise angetrieben.

Wenn dann auch noch andere Hauptfenster von vorher gestarteten Programm auftauchen, dann ist das *sehr* schlecht, denn das bedeutet es gibt mehrere `Tk`-Exemplare gleichzeitig was nicht sein darf. Ob und was dann passiert ist undefiniert. Ich vermute an der Stelle stark Du machst das alles von Spyder aus: Das ist keine IDE in der ich Programme entwickeln würde, weil diese aus der IDE gestartet weder unabhängig laufen, noch in einer neuen, sauberen Umgebung gestartet werden. Das heisst Namen und Objekte aus vorherigen Programmläufen existieren auch in neu gestarteten Programmen. Was nicht den normalen Umständen entspricht.

Bist Du *sicher* das Du das aktuellste Spyder3 installiert hast? Du hast das ja als Paket über Deine Linuxdistribution installiert. Der Dialog fragt aber beim Spyder-Projekt ob es was neues gibt, nicht ob es ein neues Debianpaket für Deine Paketquellen gibt. An der Stelle müsstest Du dann entscheiden ob Du etwas ausserhalb der Linuxdistribution installieren möchtest, oder diese Meldung deaktivieren.
Python1906
User
Beiträge: 29
Registriert: Mittwoch 9. November 2016, 13:52

Mit Starten meine ich, dass ausführen von einer Pythondatei mithilfe der Spyder-IDE. Das heisst, dass ich einfach auf den ausführen Button drücke und schaue was es ausgibt.

Spyder3 zeigt mir auch an, dass ich ein Update machen kann, jedoch habe ich es schon mit sudo apt-get update und sudo apt-get upgrade versucht, aber es tut sich nichts (eigentlich müsste es klappen, weil ich es so installiert habe: sudo apt-get install spyder3).

Deswegen, wollte ich wissen, wie ich es sonst updaten soll.

Welche Python - IDE's nutzes Sie denn bzw. welche könnten Sie mir empfehlen.
BlackJack

@Python1906: Wie schon gesagt, Spyder fragt bei sich zuhause nach ob es aktuell ist oder nicht. Das weiss nichts davon welche Linuxdistribution verwendet wird und wie es installiert wurde. Die Frage ist an der Stelle ob man unbedingt die neueste Version braucht, oder lieber die von der Linux-Distribution verwendet.

Ich selbst benutze gar keine IDE sondern einen Texteditor und eine IPython-Shell um nebenbei auch „live“ Code ausprobieren zu können.
beertonic
User
Beiträge: 37
Registriert: Montag 8. Mai 2017, 15:26

Spyder ist als Matlab Alternative durchaus brauchbar. Ich habe es auch mal genutzt bevor ich auf https://www.jetbrains.com/pycharm/Pycharm umgestiegen bin.
Wenn du ein großer Hacker werden willst machs wie BlackJack und verzichte auf die IDE, ansonsten schau dir Pycharm mal an.
Antworten