Programmieren lernen in einfachen Schritten, für Anfänger. Damit der Spaß und die Motivation nicht nach wenigen Tagen schon sinkt, lernen wir ein kleines aber feines Fantasy Rollenspiel Textabenteuer in Python 3 zu programmieren.
Voraussetzung:
- Python3 ist installiert
- PyCharm ist installiert und der Interpreter ist eingestellt
Als kleine Hilfe: Jetbrains Tutorial(Englisch)
Was lernen wir?
Wir fangen mit dem typischen Lernstoff an:
- Was auf dem Bilschirm ausgeben
- Eingabe des Nutzers
- Kode dokumentieren
- if Abfragen
- Schleifen
- Methoden
- Klassen
- usw…
Allerdings wird das kein ödes Tutorial, bei dem man eigentlich nichts machts, sondern das wird ein echtes Abenteuer: Ein Textabenteuer.
Was programmieren wir?
In diesem Tutorial programmieren wir die üblichen Features die man braucht um ein voll umfängliches TextAdventure zu programmieren und zu verbreiten. Das wären:
- Räume
- Türen
- Story
- Gegner
- Truhen
- Loot
- Inventar
- Schaden und Leben
- Tod
Kleines Vorwort
Viele wollen programmieren lernen und sehen darin die Zukunft, denn immer mehr in unserem Leben wird automatisiert. Wer sich nun ein wenig im Internet umgesehen hat ist sicherlich auf die Sprache Python gestossen. Allerdings haben auch viele das Problem, dass die ganze Materie echt trocken und öde ist. Die Motivation lässt sehr schnell nach, da die meisten Bücher un Tutorials sehr öde sind. Dann gibt es noch die Video Tutorials die man 1000 mal stoppen muss und immer wieder zurückspulen muss. Auch das macht keine Freude.
Um dem ein wenig entgegen zu wirken, dachte ich mir, ich erstelle ein Tutorial das nicht ganz so öde ist und man lernt in der Zeit wo man etwas entwickelt, das man auch immer wieder sofort testen kann. Was gibt es da cooleres als ein Spiel? Damit wir uns aber nicht gleich mit Grafik, Rendering und Physik beschäftigen müssen, starten wir erst mal mit einem Text Adventure. Und das natürlich in guter alter Fanatsy RPG Art und Weise.
Ich gehe jetzt einfach mal davon aus, dass Python 3 bereits auf deinem System installiert ist. Solltest du das noch nicht gemacht haben, dann schau dir ein Tutorial dazu an und lade dir die Pycharm Community Edition runter, damit du einen einfachen Start hast.(Ein Tutorial zu Python mit Pycharm kommt noch)
Was auf dem Bildschirm ausgeben
Wir haben also Pycharm offen und fangen an mit unserer ersten Datei die wir einfach mal main (main.py) taufen. Da ich denke, dass die meisten auf Windows oder Pc anfangen und die Datei erst mal nicht aus dem Terminal starten, schreiben wir auch gleich die erste Linie:
print("Willkommen beim Python RPG")
Bei Python benutzt man kein Semikolon ( ; ) um die Zeile als beendet zu markieren und somit kann das genau so stehen bleiben.
Wer nun UMSCHAT + F10 drück, der kann unten in der Konsole erkennen wie der Satz der zwischen den Anführungszeichen steht ausgegeben wird.
Willkommen beim Python RPG
Wer nun das eine oder das andere über Programmierung gelesen hat, der kann sich denken, dass dies das selbe ist wei ein Hello World. Und ja, in Python ist das meiste echt so einfach.
Eingabe des Nutzers
Da wir ja nicht wollen, dass der Nutzer, oder bei uns der Spieler, sich ne Stunde lang den einen Satz durchlesen kann, geben wir ihm die Möglichkeit seinen Namen einzugeben. Dies geht bei Python einfach mit: input()
spieler_name = input("Gib deinen Namen ein! >")
Wir speichern also den Namen des Spielers in der Variable spieler_name ab. Natürlich wollen wir nun dem Spieler gleich mal Hallo sagen, denn sonst macht die Eingabe recht wenig Sinn:
print("Hallo Spieler {} ".format(spieler_name))
Erneut geebn wir mit dem befehl print unseren Satz inklusive Spielernamen aus. Mit {} und .format() markieren wir, wo und was die Variable spieler_name ausgegeben soll. Wenn wir nun möchten, dass der Spielername in Großbuchstaben ausgegeben wird, dann fügen wir noch ein .upper() zum spieler_name hinzu.
print("Hallo Spieler {} ".format(spieler_name.upper()))
Bitte immer darauf achtgeben, dass alle Klammern auch wieder geschlossen werden. ((()))
Kode dokumentieren
Hierbei geht es nicht darum, dass ihr euren Stuhlgang beschreibt, sondern dass ich kurz und bündig erklärt, was ihr da eigentlich programmiert. Das ist nicht nur für andere Programmierer nützlich, sondern auch für euch. Nicht selten sitzt man nach ein paar Monaten wieder an seinem Kode, den man lange vernachlässigt hat, und fragt sich… was hab ich da nur machen wollen? Deswegen schreibt man sich das gemütlich dovor oder dahinter.
# Hier habe ich was dokumentiert
"""
Hier habe ich auch was
dokumentiert!
"""
Ich denke wie man das nutzt erklärt sich von alleine. Die restliche zeile nach einem # wird nicht ausgeführt und alles zwischen den “”” “”” wird auch nicht ausgeführt.
So kann man auch Kode, den man momentan nicht braucht ganz einfach ausdokumetieren.
# if ph > eh:
# print("ausdokumentiert")
"""
print("ausdokumentiert")
print("ausdokumentiert... 2")
"""
So sieht unser Kode nun aus
Nachdem wir das ganze nun fleißig eingetippt haben, könnt ihr in PyCharm mit STRG + S speichern und dann mit STRG + UMSCHALT + F10 das Program ausführen.

So sieht das nun aus. Und hier nochmal der ganze Kode:
# Dies ist ein Tutorial
print("Willkommen beim Python RPG")
spieler_name = input("Gib deinen Namen ein! >")
"""
Diese Ausgabe brauchen wir nicht mehr
print("Hallo Spieler {} ".format(spieler_name))
"""
print("Hallo Spieler {} ".format(spieler_name.upper()))