Das Erschwernis das ich glaube zu sehen ist, das in Python Dialekte vorhanden sind (Python, Raspberry, GPIOs etc.)
Das stimmt nicht. Für Python gibt es _eine_ Sprachdefinition. Es gibt verschiedene Implementierungen, was bedeutet, das "wie" das Python im Hintergrund in irgendwas für die CPU verständliches (=Maschinencode) umgewandelt wird, kann variieren. Das ist für die als Anwender aber erstmal egal, weil du es erst mal gar nicht mit bekommst und mitbekommen musst.
Was i.d.R. synonym mit Python (=der Sprachdefinition) genutzt wird ist CPython, die Referenzimplementierung der Python Software Foundation. Das ist auf dem Raspberry Pi installiert, das bekommst du bei allen anderen Linux-Distro OOTB installiert, das bekommst du, wenn du unter Win Python aus dem Microsoft Store installierst, das bekommst du standardmäßig unter MacOS. Und selbst wenn du eine anderen Implementierung wie PyPy haben solltest - der Code, den du schreibst, ändert sich dadurch nicht.
GPIO steht für die Ein- / Ausgabepins (die GPIO Pins halt) des Raspberry Pi, das hat nichts mit Python zu tun. Es gibt halt Python Module zum Ansprechen der GPIO Pins wie das genannte gpiozero. Module gehören bei Python dazu, um die Funktionalität zu erweitern. Die Standardinstallation von Python besteht neben dem Kern, also was "build-in" ist, aus dutzenden Modulen. Des weiteren gibt es noch hunderttausende externe Module wie das bereits genannte gpiozero. Das ist aber für "richtige" Programmiersprachen normal, d.h. das ist bei z.B. JavaScript, Go, Rust, C, C++ etc nicht anders. Da unterscheidet sich nur das "wie", also wie externe Module eingebunden / installiert werden
Programmieren können hat viel mit Lernen und Verstehen zu tun. Das kann auch per Lerning by Doing sein. Wie schon gesagt wurde: auch ich würde die _dringend empfehlen, das Python-Tutorial in der Sprache deiner Wahl durchzuarbeiten, um die Grundlagen zu verstehen. Weil wenn du die drauf hast, dann kann man ggf. auch Anfagen, sich Codeschnipsel aus dem Internet zu suchen und für sich selber sinnvoll zusammenzubauen. "Blindes" Copy&Paste bringt nix - hast du auch schon gemerkt. Das Problemchen ist noch: im Internet gibt es viel alten (und schlechten) Code. Klassiker im Raspi Bereich: zum Ansprechen der GPIO Pins RPi.GPIO statt gpiozero als Modul verwenden. Letzteres ist seit Jahren Standard und in jeder Hinsicht besser und einfacher.
Und ja: Python ist im Vergleich zu anderen Sprachen einfach zu lernen. Das heißt aber _nicht_, dass das ein Selbstläufer ist und man aus dem Nichts mit wenig Wissen ein total tolles Programm schreiben kann.
Bzgl. Hilfe: gibt es hier. Allen _relevanten_ Code zeigen, beschreiben, was man erwartet, beschreiben, was aber passiert und - wenn vorhanden - die _volle_ Fehlermeldung _1:1_ posten. Kein Volltextprosa, keine eigene Beschreibung - mit Aussagen wie "2ter Fehler Pin nicht definiert oder so..." kann keiner was anfangen.
Des Weiteren solltest du beim Lernen mental dafür bereit sein, den Code mehrmals neu und besser zu schreiben. Gerade am Anfang sind die Chancen hoch, dass dir von einem Helfenden gesagt wird, was alles falsch ist und das am Ende effektiv 95% deines Code betrifft. Darfst du halt nicht persönlich nehmen, ist Teil des Lernprozesses. Refractoring ist Teil von Codeentwicklung, auch bei Profis.
Gruß, noisefloor