Einer der ersten Befehle, die ein Anfänger in Python lernt, ist die sogenannte print-Funktion. Bestimmt hast auch du „Hallo Welt!“ auf der Konsole erscheinen lassen, als du deine ersten Schritte mit Python gemacht hast. Falls nicht, dann lies jetzt, wie du mithilfe der print-Funktion in Python Datenwerte auf dem Bildschirm anzeigen lassen kannst. Die Ausgabe von Werten gehört zu den Basics, die jeder der Python lernt von Anfang an beherrschen sollte.
Die print-Funktion in Python verwenden
Wie bereits erwähnt, kannst du mit der print-Funktion Datenwerte auf dem Monitor bzw. der Konsole anzeigen lassen.
Man spricht hier von einer Ausgabe.
Das ist deshalb nützlich, da Computer und Benutzer miteinander kommunizieren müssen.
Ein Großteil aller Programmier-Tutorials, egal in welcher Programmiersprache, starten mit der einfachen Frage: „Wie kann ich „Hello World!“ oder „Hallo Welt!“ auf dem Monitor anzeigen lassen?“
Genau für diese Zwecke gibt es in Python die sogenannte print-Funktion.
Wir lernen in diesem Beitrag alle wichtigen Grundlagen kennen. Für Fortgeschrittene gibt es auch noch weitere Feinheiten, aber hier soll es erstmal um die Basics gehen.
Wenn du deine Skills vertiefen willst, dann findest du hier 15 Übungsaufgaben zur print-Funktion mit Lösungen!
„Hello World!“ in Python
Du rufst die print-Funktion auf, indem du den Befehl print() in deinem Editor eingibst.
In die Klammer kannst du nun alles schreiben, was du gerne auf dem Bildschirm erscheinen lassen möchtest. Wichtig ist, die Klammer muss direkt nach dem Befehl print geschrieben werden. Nicht vergessen, die Klammer auch wieder zu schließen.
Nun aber zum „Hello World!“-Programm. So sieht der Code für „Hello World!“ in Python aus:
Ich habe in meinen Editor, (hier habe ich repl.it verwendet), print(„Hello World!“) eingegeben (links) und danach auf „Run“ gedrückt.
Rechts auf der Konsole erscheinen jetzt die Worte „Hello World!“. 🎉
Bei dem Satz „Hello World!“ handelt es sich um eine Zeichenkette. Also um den Datentyp string, der in Python immer mit Anführungsstrichen rechts und links versehen werden muss.
Falls du mehr darüber wissen willst, habe ich hier einen Artikel für dich.
Die print-Funktion macht automatisch einen Zeilenumbruch ans Ende deiner Eingabe. Das siehst du auf folgendem Bild.
Die beiden Worte „Hello“ und „World!“ wurden nicht hintereinander, sondern jeweils in einer neuen Zeile ausgegeben.
Hier noch ein Beispiel:
Auf dem Bild konntest du sehen, dass die leere Klammer keine Zeichen auf der Console ausgibt und einen Zeilenumbruch erzeugt.
Das verrät uns schon einiges über die print-Funktion in Python. Egal, was in der Klammer steht, am Ende wird automatisch ein Zeilenumbruch generiert. Das heißt, das nächste Argument erscheint in der nächsten Zeile deiner Konsole.
Die print-Funktion macht das automatisch, ohne dass wir es extra in die Klammer hineinschreiben müssen.
Zeilenumbruch (end )
Wenn du das nicht möchtest, dass die print-Funktion einen Zeilenumbruch macht, sondern zwischen verschiedenen Ausgaben ein anderes Zeichen erscheinen soll, dann geht das so:
Beispielsweise möchtest du ein Leerzeichen ‚ ‚ oder einen Doppelpunkt ‚:‘ generieren, so musst du end=‘ …‘ ans Ende schreiben.
Schau dir das Bild an.
Hier habe ich ans Ende des Arguments in der ersten print-Funktion ,end=‘ ‚ geschrieben und damit anstatt einen Zeilenumbruch ein Leerzeichen ans Ende des Arguments gesetzt.
Ein Zeilenumbruch kann man in Python mit \n (Backslash und Buchstabe n) hervorrufen.
Es ist also automatisch so eingestellt, als würden wir ,end=’\n‘ in die Klammer der print-Funktion schreiben.
Die print()-Funktion in Python macht ans Ende des Arguments automatisch einen Zeilenumbruch.
Daten separieren (sep) mit der print-Funktion
Mehrere Datenwerte kann man auch direkt nacheinander ausgeben lassen. Dafür schreibst du einfach ein Komma zwischen die einzelnen Werte. Python gibt sie dir dann mit einem Leerzeichen separiert auf der Konsole aus.
Ich habe die beiden strings „Hello“ und „World!“ einzeln in die print-Funktion geschrieben und durch ein Komma getrennt. Das Komma wird von Python automatisch so gewertet, dass ein Leerzeichen ‚ ‚ als Trenner erscheint.
Es müssen nicht nur zwei Werte sein, du kannst beliebig viele Werte in die print-Funktion einsetzen und durch Kommata trennen.
Nun kann es aber sein, dass wir mehrere Werte durch die print-Funktion in einer Zeile ausgeben lassen wollen, aber wir möchten kein Leerzeichen dazwischen. Vielleicht möchten wir ein Komma oder einen Doppelpunkt.
Dazu fügen wir am Ende des print-Arguments ein Komma und den Begriff ,sep=‘ … ‚ ein. Alles was wir jetzt nach sep= schreiben dient als Trennung zwischen den einzelnen Werten im print-Argument.
Hier habe ich einen Doppelpunkt als Trenner (engl. separator) zwischen die beiden strings ausgeben lassen. Das ist eine gute Idee, wenn du beispielsweise Tag.Monat.Jahr ausgeben lassen willst. Das ist unüblich, mit Leerzeichen dazwischen.
Die print()-Funktion in Python nutzt als Trenner immer ein Leerzeichen, wenn du einzelne Werte mit Komma getrennt hast.
Zusatzinfo zu sep und end in Python print-Funktion
Du kannst nur Zeichenketten(strings) als Trenner oder end-Wert einfügen, also als Argument hinter den Befehlen =sep und =end verwenden oder den Begriff None.
Strings werden immer entweder mit einem oder zwei oder drei Anführungsstrichen rechts und links markiert. Wichtig ist hierbei, dass du auf beiden Seiten die gleiche Anzahl an Anführungsstrichen bzw. Hochkommas verwendet hast.
Wenn du sep=None bzw. end=None eingibst, dann wird Python die übliche Einstellung verwenden. Das heißt Leerzeichen als Trenner und Zeilenumbruch als Ende der print-Funktion.
Verknüpfung (engl. concatenation)
Eine Besonderheit, die sich als sehr nützlich erweisen kann, ist die sogenannte concatenation von strings.
Man kann mit Wörtern und Zeichenketten sozusagen auch Plus und Mal rechnen in Python. Kurz gesagt, man kann diese mit den Symbolen + oder * verknüpfen.
Die Verknüpfung mehrerer strings mit + oder * heißt auf Englisch concatenation, was auf Deutsch so viel wie Verknüpfung/Verkettung oder Aneinanderreihung bedeutet.
Ich habe die Wörter „Hello“ und „World“ mit einem Plus verknüpft. „Juhuu“ * 3 ergibt dreimal nacheinander das Wort „Juhuu“. Das kannst du rechts auf der Konsole sehen.
Das einzige „Problem“ ist hierbei, dass nicht automatisch ein Leerzeichen eingefügt wird.
Anders als bei der Trennung durch Kommata weiter oben. Du musst also in deine Werte ein Leerzeichen mit hineinschreiben, wenn du die einzelnen strings mit Leerzeichen getrennt hast. Siehe folgendes Bild.
Füge bei der concatenation von strings Leerzeichen, falls nötig in die strings mit ein.
Wichtig: Die Verknüpfung mit + oder * funktioniert nur bei gleichem Datentyp. Also print(„Hallo“ + 4.5) funktioniert nicht! Da musst das Komma verwenden, wie weiter oben. Also print(„Hallo“, 4.5).
Werte von Variablen und Aussagen ausgeben lassen
Meine bisherigen Beispiele haben sich nur um strings gedreht. Aber natürlich kannst du auch alle anderen Datentypen wie ganze Zahlen (integers), Kommazahlen (floats) und andere ausgeben lassen. Hier findest du nochmal die Übersicht über die wichtigsten Datentypen.
Wenn du bereits einige Werte in Variablen gespeichert hast, dann kannst du einfach die Variable in deine print-Funktion schreiben. Auf der Konsole erscheint dann der Wert der Variable.
Außerdem kannst du auch Wahrheitswerte (Boole’sche Werte) von Aussagen anzeigen lassen. Mehr über Aussagen, die Vergleichsoperatoren beinhalten, findest du in diesem Artikel.
Die Aussage x < 4 prüft, ob die Variable x einen Wert kleiner als 4 gespeichert hat. Da wir davor der Variable den Wert 5 zugeordnet haben, ist das natürlich falsch. Und wir erhalten den Boole’schen Wert False auf der Konsole angezeigt.
Fehler vermeiden mit der print-Funktion
Ein häufiger Fehler, den ich bei meinen Studis und Schüler*innen sehe ist, dass sie zu viele Anführungsstriche machen.
Im vorherigen Bild wurde das Wort ‚Hallo‘ in der Variable y gespeichert.
Es handelt sich also um eine Zeichenkette (string). Möchte ich nun das Ganze auf der Konsole ausgeben lassen, dann schreibe ich print(y) und lasse die Anführungsstriche weg. Diese sind ja bereits in y mit drin gespeichert sozusagen. Ich hoffe, das ergibt Sinn.
Probiere es selbst aus und gib print(y) und print(‚y‘) in deinen Editor ein.
Der Code wird immer von oben nach unten gelesen. In dem vorherigen Bild hatte die Variable zuerst den Wert 100 und später wurde sie mit dem Wert „Hallo“ von y überschrieben. Die print-Funktion gibt immer den Wert aus, der aktuell in der Variable gespeichert ist.
Es ist also sehr wichtig im Blick zu behalten, welche Werte die verschiedenen Variablen gespeichert haben.
Der letzte häufige Fehler ist das Vergessen von Klammern oder Anführungsstrichen. Wenn du eine Klammer aufmachst, dann musst du sie auch zu machen. Beim Programmieren muss man also sehr aufmerksam sein!
Wichtig: Damit sich das Gelernte festigen kann, solltest du es unbedingt anwenden. Hier findest du Übungsaufgaben zu print-Funktion. Es gibt für jedes Niveau etwas, die Aufgaben werden sukzessive immer schwieriger. Zudem findest du dort auch Tipps und Lösungen!
Versuche doch mal selbst, ob du alle Beispiele aus diesem Artikel programmieren kannst. Lass mir gerne Fragen in den Kommentaren da!
Wenn du nicht weißt, wie du ein Python Programm überhaupt erstellen kannst, dann empfehle ich dir diesen Artikel hier.
Ich habe noch viele weitere Artikel über Python und es werden stetig mehr. Schau mal vorbei.