Meine schlechte Erfahrungen mit Thonny.

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
RIN67630
User
Beiträge: 141
Registriert: Sonntag 29. April 2018, 08:07

Hallo,
als gelegentlichen Anwender von Python, auf Raspberry Pi, Windows, macOS nutzte ich Thonny als Editor/Debugger. Thonny ist auch gepriesen als "anfängerfreundlich".
Mehmals musste ich jedoch feststellen, dass das Ausführen über Thonny unerklärlichen Fehlern hervorbrachten , die bei direkter Ausführung über den Terminal nicht stattfanden.
Zuletzt mit der Nutzung vom völlig korrektes

Code: Alles auswählen

import getpass
User_WIFIPASS = getpass.getpass(prompt='Enter Password:') 
Wo unter Thonny einfach nichts geschieht.
Ich vermute hier eine -für mich noch unklare- Ausführung unter eine venv Umgebung? Python3 wird im Terminal ohne venv ausgeführt.
Kann man das leicht geradebiegen?
Oder ist Thonny einfach kaputt?
Welche Alternative, die es auf alle OS ablauffähig ist, gäbe es sonst?
Merci schonmal...
nezzcarth
User
Beiträge: 1749
Registriert: Samstag 16. April 2011, 12:47

getpass ist Teil der Standardbibliothek, das wird nichts mit einer virtuellen Umgebung zu tun haben, dass das nicht geht. Die Benennung "User_WIFIPASS" hält sich nicht an die Konvention (Variablennamen werden durchgängig klein geschrieben), aber das ist ebenfalls nicht der Grund.

Ich selbst benutze kein Thonny. Ich denke nur, dass dir eine andere IDE (PyCharm ist hier wohl der Standard) hier evtl. auch nicht weiterhilft; das Forum ist voll mit ganz ähnlichen Fragen zu anderen IDEs. Es liegt also eher in der Natur der Sache, dass diese Software eben gewisse Prozesse unter einer GUI verbuddelt und man leicht durcheinander kommen kann, wenn man die Prozesse selbst darunter vielleicht noch nicht 100% im Griff hat. Man braucht ja auch kein ausgefeiltes Programm zum Python-programmieren. Ein einfacher Editor mit Syntaxhervorhebung, die es für alle Betriebssysteme in großer Zahl gibt und eine Shell reichen auch (das ist übrigens auch im professionellen Umfeld ein übliches Setup). Das hat aus meiner Sicht den Vorteil, dass man ein besseres Verständnis für die Abläufe gewinnt, die die IDE kapselt.
RIN67630
User
Beiträge: 141
Registriert: Sonntag 29. April 2018, 08:07

nezzcarth hat geschrieben: Samstag 13. Juli 2024, 08:51 Ich denke nur, dass dir eine andere IDE (PyCharm ist hier wohl der Standard) hier evtl. auch nicht weiterhilft...
Danke, PyCharm macht es schon besser.
Es wirft zwar ein Warning aus, dass möglicherweise das Passwort angezeigt werden kann, aber macht brav weiter.

Dass es auch mit dem Terminal geht, weiss ich schon, aber die Möglichkeit auch step-by-step vorzugehen find ich sehr gut...
Benutzeravatar
__blackjack__
User
Beiträge: 14001
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

`getpass()` will halt eigentlich nur mit einem echten Terminal(emulator) reden, weil es die Eingabe ohne Echo machen will. Das können nicht alle IDEs. Grundsätzlich sollte man Programme auch in der Umgebung laufen lassen in der sie am Ende tatsächlich laufen, sonst hat man immer das Problem das IDEs für subtile Änderungen sorgen können, die einem am Ende auf die Füsse fallen.

Einzelschrittdebugger sind in Python für mich eher nutzlos, weil man dann den Code so schreiben muss wie man das früher in Pascal & Co gemacht hat, um da überhaupt Schritte zu haben die man sinnvoll durchsteppen kann.
“The best book on programming for the layman is »Alice in Wonderland«; but that's because it's the best book on anything for the layman.” — Alan J. Perlis
Benutzeravatar
DeaD_EyE
User
Beiträge: 1223
Registriert: Sonntag 19. September 2010, 13:45
Wohnort: Hagen
Kontaktdaten:

__blackjack__ hat geschrieben: Samstag 13. Juli 2024, 11:31Grundsätzlich sollte man Programme auch in der Umgebung laufen lassen in der sie am Ende tatsächlich laufen, sonst hat man immer das Problem das IDEs für subtile Änderungen sorgen können, die einem am Ende auf die Füsse fallen.
Das hat schon für einige Diskussionen im Micropython-Forum gesorgt. Es kommt ziemlich oft vor, dass Anfänger auf Probleme stoßen.
sourceserver.info - sourceserver.info/wiki/ - ausgestorbener Support für HL2-Server
RIN67630
User
Beiträge: 141
Registriert: Sonntag 29. April 2018, 08:07

__blackjack__ hat geschrieben: Samstag 13. Juli 2024, 11:31 Einzelschrittdebugger sind in Python für mich eher nutzlos, weil man dann den Code so schreiben muss wie man das früher in Pascal & Co gemacht hat, um da überhaupt Schritte zu haben die man sinnvoll durchsteppen kann.
Passt mir aber wunderbar, genauso schreibe ich. ;-)
Antworten