Notwendigkeit Module Speichern und Ausführen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
AnfängerPeter
User
Beiträge: 1
Registriert: Dienstag 8. Juni 2021, 11:46

Hallo zusammen,

ich habe neu angefangen in Python zu programmieren und habe dabei zuerst mal mit einem Tutorial auf Youtube angefangen.
Ich nutze Spyder(Python 3.8).

Nun zu meinem Problem:
In dem Tutorial werden verschiedene Module geschrieben, die teilweise auf die anderen zugreifen und diese importieren.
Dort funktioniert immer alles direkt einwandfrei, ohne irgendwas zwischendurch zu speichern.

Wenn ich nun aber zum Beispiel in einem Modul etwas ändere, und danach das Main Modul ausführen will welches dieses Modul aufruft, dann muss ich nicht nur das geänderte Modul zuerst mit F9 ausführen, sondern sogar zuerst das Modul speichern und dann erst ausführen. Wenn ich das nicht mache bekomme ich immer irgendwelche Fehlermeldungen, bis ich die Dateien alle gespeichert und neu ausgeführt habe.

Das ist für mich allerdings ziemlich hinderlich, da ich als anfänger natürlich oft und viel testen will um mögliche Fehler aufzudecken.

Gibt es eine Möglichkeit das zu umgehen?

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

Aus Sicht von Python: nein.

Es gehört mE auch einfach zum entwickeln dazu, oft und reichlich den shortcut zum speichern zu nutzen.

Ggf kann Spyder sowas wie autosave etc. Das müsstest du mal probieren in den Einstellungen zu finden.
Benutzeravatar
sparrow
User
Beiträge: 4183
Registriert: Freitag 17. April 2009, 10:28

@AnfängerPeter: Speichern musst du die Dateien - sonst kann sie der Interpreter natürlich nicht laden. Aber Ausführen musst du Module nicht. Es reicht, wenn du das Hauptprogramm ausführst.
Benutzeravatar
__blackjack__
User
Beiträge: 13061
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Der letzte Satz von sparrow stimmt nur so halb weil hier Spyder benutzt wird: da sollte man immer komplett alles neustarten, denn sonst führt Spyder immer alles im gleichen Interpreter aus und auch alles auf Modulebene der ausgeführten Module bleibt im Speicher und ist beim nächsten ausführen des Moduls noch vorhanden. Was zu subtilen Fehlern führen kann, die erst auffallen wenn man wirklich mal alles von 0 aus ausführt.

Ich finde Spyder nicht so wirklich gut zum Programmieren geeignet. Das ist praktisch wenn man Daten ”explorativ” verarbeitet/untersucht/visualisiert, aber eher nicht um Programme zu entwickeln.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten