PGZERO in der Python-IDLE 3.9 benutzen ...

Probleme bei der Installation?
Antworten
Benutzeravatar
Grexie
User
Beiträge: 11
Registriert: Samstag 26. Juni 2021, 09:30

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.
rogerb
User
Beiträge: 878
Registriert: Dienstag 26. November 2019, 23:24

@Grexie,
Was muss ich beim "Namen" und "Wert" der Umgebungsvariablen eintragen?
Der Variablenname der Umgebungsvariable lautetet:
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
rogerb
User
Beiträge: 878
Registriert: Dienstag 26. November 2019, 23:24

Was ist genau der Unterschied zwischen "pygame", "pgzero" und "pgzrun"?
Ich kann auch nur sagen, was die Dokumentation sagt:
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
Benutzeravatar
Grexie
User
Beiträge: 11
Registriert: Samstag 26. Juni 2021, 09:30

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.
Benutzeravatar
Grexie
User
Beiträge: 11
Registriert: Samstag 26. Juni 2021, 09:30

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.

Code: Alles auswählen

import pgzrun

def draw():
    screen.draw.text("Hallo Welt!", topleft=(10,10))

pgzrun.go()
Kann mir jemand sagen, weshalb in der IDLE-Umgebung das Modul PGRZUN nicht gefunden wird?
Benutzeravatar
sparrow
User
Beiträge: 4183
Registriert: Freitag 17. April 2009, 10:28

Das kommt darauf an, wie du etwas installiert hat.
Python-Instsllstionen haben jeweils ihre eigene Umgebung. Zusätzlich kann man mit venv eigene isolierte Umgebungen anlegen.
rogerb
User
Beiträge: 878
Registriert: Dienstag 26. November 2019, 23:24

Außerdem soll man laut Dokumentation ein pgzero Programm von der Konsole starten:
https://pygame-zero.readthedocs.io/en/s ... -mode.html
Certain programs, such as integrated development environments like IDLE and Edublocks, will only run python, not pgzrun.
Also du solltest das so von der Konsole starten:
pgzrun my_program.py
(Ich habe pgzero nicht installiert, reine Vermutung)

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?
Benutzeravatar
Grexie
User
Beiträge: 11
Registriert: Samstag 26. Juni 2021, 09:30

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
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

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.
Benutzeravatar
Grexie
User
Beiträge: 11
Registriert: Samstag 26. Juni 2021, 09:30

__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.
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. :roll:
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

Vergiss IDLE. Such Dir eine IDE oder einen Editor mit dem Du gut klar kommst und verwende diese(n). Mir genügt ein Editor und das Terminal - letztendlich ist das Geschmackssache.
Benutzeravatar
Grexie
User
Beiträge: 11
Registriert: Samstag 26. Juni 2021, 09:30

kbr hat geschrieben: Samstag 26. Juni 2021, 18:43 Vergiss IDLE. Such Dir eine IDE oder einen Editor mit dem Du gut klar kommst und verwende diese(n). Mir genügt ein Editor und das Terminal - letztendlich ist das Geschmackssache.
Stimmt, ich suche mir eine IDE, bei der für mich vorerst alles passt. Das sind THONNY und MU. Danke! :D
Benutzeravatar
Grexie
User
Beiträge: 11
Registriert: Samstag 26. Juni 2021, 09:30

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
Antworten