Hallo,
kann mir jemand dabei helfen, dass ich "pgzero" in der aktuellen Python IDLE V3.9 benutzen kann.
Ich habe Python 3.9 installiert, ebenfalls den Paket-Installer PIP (python -m pip install -U pip). Anschließend habe ich mit PIP "pygame" (pip install pygame) und "pgzero" (pip install pgzero) vom Prompt installiert. Bei "pgzero" bekam ich den Warnhinweis*, dass das Skript "pgzrun.exe" im Verzeichnis [...] liegt, aber nicht im PATH. Ich vermute, dass nun ein Eintrag bei den "Umgebungsvariablen" gemacht werden muss. Das Fenster zur Editierung der Umgebungsvariablen habe ich gefunden. Was muss ich beim "Namen" und "Wert" der Umgebungsvariablen eintragen? Beim "Wert" der Variablen wahrscheinlich den Pfad, wo das Skript "pgzrun.exe" liegt (siehe unten), oder?
Zuletzt: Was ist genau der Unterschied zwischen "pygame", "pgzero" und "pgzrun"?
Gruß ... Grexie
* WARNING:
The script pgzrun.exe is installed in 'C:\Users\grex1_000\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\Scripts' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
PGZERO in der Python-IDLE 3.9 benutzen ...
@Grexie,
PATH
Der Variablenwert ist der Pfad aus der Fehlermeldung:
C:\Users\grex1_000\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\Scripts
Der Variablenname der Umgebungsvariable lautetet:Was muss ich beim "Namen" und "Wert" der Umgebungsvariablen eintragen?
PATH
Der Variablenwert ist der Pfad aus der Fehlermeldung:
C:\Users\grex1_000\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\Scripts
Ich kann auch nur sagen, was die Dokumentation sagt:Was ist genau der Unterschied zwischen "pygame", "pgzero" und "pgzrun"?
pgzero ist eine vereinfachte Version von pygame, die man gut im Unterricht einsetzen kann. Es gibt wahrschlich weniger Möglichkeiten, dafür ist die Programmierung aber einfacher.
Das ist das Terminal Kommando um ein pgzero Programm zu starten.
pgzrun my_program.py
Vielen Dank für deine Antwort! Ja, das hatte ich auch vermutet, dass "pgzero" eine abgespeckte Version von "pygame" ist. Leider sind die Installationsanweisungen in Büchern nicht immer vollständig, dann sitzt man vor Fehlermeldungen und weiß nicht, was man machen soll. In der IDLE hieß es beim Import von "pgzero", dass das Modul nicht gefunden wurde. Wieso das dann im Buch klappt und am PC nicht, weiß man dann nach vielen Überlegungen manchmal erst ein, zwei Tage später.
Hallo, ich habe jetzt in der Umgebungsvariablen PATH den Pfad für PGZRUN eingetragen und das System neu gestartet. Anschließend kam es trotzdem zur Fehlermeldung "ModuleNotFoundError: No module named 'pgzrun'", nachdem ich F5 drückte, um dieses simple Skript auszuführen.
Kann mir jemand sagen, weshalb in der IDLE-Umgebung das Modul PGRZUN nicht gefunden wird?
Code: Alles auswählen
import pgzrun
def draw():
screen.draw.text("Hallo Welt!", topleft=(10,10))
pgzrun.go()
Außerdem soll man laut Dokumentation ein pgzero Programm von der Konsole starten:
https://pygame-zero.readthedocs.io/en/s ... -mode.html
Wenn das dann immer noch nicht funktioniert, solltest du auch mal dem Hinweis von sparrow nachgehen.
- Hast du Python mehrfach installiert?
- Hast du virtuelle Pythonumgebungen installiert?
listet pip denn pgzero auf?
https://pygame-zero.readthedocs.io/en/s ... -mode.html
Also du solltest das so von der Konsole starten:Certain programs, such as integrated development environments like IDLE and Edublocks, will only run python, not pgzrun.
(Ich habe pgzero nicht installiert, reine Vermutung)pgzrun my_program.py
Wenn das dann immer noch nicht funktioniert, solltest du auch mal dem Hinweis von sparrow nachgehen.
- Hast du Python mehrfach installiert?
- Hast du virtuelle Pythonumgebungen installiert?
listet pip denn pgzero auf?
Ich mache dieses ganze Prozedere in der IDLE mithilfe eines Buches zur Spieleprogrammierung, also unter Anleitung. Ich habe mit PIP "pygame" und "pgzero" installiert.
Es ist beides möglich: Man kann im Skript ein Programm starten, muss aber ganz oben "import pgzrun" und als letzte Zeile im Quelltext "pgzrun.go()" stehen haben. Es ist auch möglich, das Programm von der Konsole mit "pgzrun.exe" plus Pfad und Datei laufen zu lassen. Da mein Pfad aber sehr lang ist, mache ich das lieber im Skript.
Ich habe drei IDE's installiert, wollte aber jetzt mal länger mit der Python-IDLE arbeiten. Habe aber leider mit der Einbindung von "pgzero" ständig Probleme. Da mein PC nicht so viel Power hat, habe ich nur relativ schlanke IDE's installiert: Thonny, Mu und eben IDLE. Mit Thonny und Mu geht das absolut reibungslos, "pgzero" und "pygame" zu importieren und damit zu programmieren. Bei Mu wird das sogar als Modus direkt angeboten, mit "Pygame-Zero" zu programmieren. Man kann bei Mu also switchen zwischen Pygame-Zero und Python 3.
Jetzt fragt ihr euch vielleicht, warum ich mir den ganzen Stress mit der IDLE 3.9 mache. Wie gesagt, ich möchte mit der IDLE mal eine Weile programmieren. Sie gehört ja zum Standard-Paket von Python. Ich finde es gut, wenn man sich auch mit dem Standard-Edition gut auskennt.
Beste Grüße ... Grexie
Es ist beides möglich: Man kann im Skript ein Programm starten, muss aber ganz oben "import pgzrun" und als letzte Zeile im Quelltext "pgzrun.go()" stehen haben. Es ist auch möglich, das Programm von der Konsole mit "pgzrun.exe" plus Pfad und Datei laufen zu lassen. Da mein Pfad aber sehr lang ist, mache ich das lieber im Skript.
Ich habe drei IDE's installiert, wollte aber jetzt mal länger mit der Python-IDLE arbeiten. Habe aber leider mit der Einbindung von "pgzero" ständig Probleme. Da mein PC nicht so viel Power hat, habe ich nur relativ schlanke IDE's installiert: Thonny, Mu und eben IDLE. Mit Thonny und Mu geht das absolut reibungslos, "pgzero" und "pygame" zu importieren und damit zu programmieren. Bei Mu wird das sogar als Modus direkt angeboten, mit "Pygame-Zero" zu programmieren. Man kann bei Mu also switchen zwischen Pygame-Zero und Python 3.
Jetzt fragt ihr euch vielleicht, warum ich mir den ganzen Stress mit der IDLE 3.9 mache. Wie gesagt, ich möchte mit der IDLE mal eine Weile programmieren. Sie gehört ja zum Standard-Paket von Python. Ich finde es gut, wenn man sich auch mit dem Standard-Edition gut auskennt.
Beste Grüße ... Grexie
Halte ich fuer eine unnoetige unnoetige Investition. Eine IDE oder ein Editor wechselt man nicht wie seine Unterwaesche. Man arbeitet sich da ein. Das man sich das anschaut ist ja ok, aber IDLE ist nun wirklich das rudimentaerste. Wenn es in den anderen geht, ist die Zeit IMHO verschwendet.
Ja, da kannst du richtig liegen. Ich probiere gerade verschiedene Editoren aus. Mit Thonny habe ich bislang die besten Erfahrungen gesammelt. Sieht wohl so aus, dass das mit der Python IDLE alles etwas schwieriger und rudimentärer ist.__deets__ hat geschrieben: ↑Samstag 26. Juni 2021, 18:14 Halte ich fuer eine unnoetige unnoetige Investition. Eine IDE oder ein Editor wechselt man nicht wie seine Unterwaesche. Man arbeitet sich da ein. Das man sich das anschaut ist ja ok, aber IDLE ist nun wirklich das rudimentaerste. Wenn es in den anderen geht, ist die Zeit IMHO verschwendet.
Stimmt, ich suche mir eine IDE, bei der für mich vorerst alles passt. Das sind THONNY und MU. Danke!
Ich habe jetzt gerade gelesen, dass man Python 3.8 installieren soll, um "pygame zero" zu benutzen.
"Do NOT download the lastest version of Python. Install version 3.8 instead. Make sure you select the 64bits version. Other versions may not be supported by Pygame Zero."
https://aposteriori.trinket.io/game-dev ... stallation
Ein gutes Tutorial zu "Pygame Zero" findet man unter: https://pygame-zero.readthedocs.io/en/s ... urces.html
"Do NOT download the lastest version of Python. Install version 3.8 instead. Make sure you select the 64bits version. Other versions may not be supported by Pygame Zero."
https://aposteriori.trinket.io/game-dev ... stallation
Ein gutes Tutorial zu "Pygame Zero" findet man unter: https://pygame-zero.readthedocs.io/en/s ... urces.html