Die Beispiele aus diesem Abschnitt können in einem Jupyternotebook nachvollzogen werden. Es muss vorher entpackt werden.
Danach kann man das Notebook z.B. bei https://jupyter.org/try → JupyterLab hochladen und öffnen.
Alternativ kann man auch bei https://jupyter.org/try → Jupyterlab → New → Console eine Pythonkonsole starten und die Beispiele ausführen.
Pythonbefehle werden durch den Zeilenumbruch voneinander getrennt. Sobald ich also in der Pythonshell <ENTER> drücke wird der Befehl ausgeführt. Im Beispiel wird in der Pythonshell der Befehl print("Hallo Welt")
eingegeben und danach die <ENTER>-Taste gedrückt.
>>> print("Hallo Welt!") Hallo Welt!
Will man trotzdem mehrere Befehle in eine Zeile schreiben, so muss man diese durch ein Semikolon voneinander trennen.
>>> print("Erste Zeile!"); print("Zweite Zeile!") Erste Zeile! Zweite Zeile!
Ein weiteres Trennzeichen ist der Doppelpunkt. Mit dem Doppelpunkt werden Codeblöcke abgegrenzt. Nach einem Doppelpunkt müssen die folgenden Befehle, die zum selben Codeblock gehören, um die selbe Tiefe eingerückt werden.
>>> a = 1 >>> b = 2 >>> if a < b: print("a ist kleiner als b.") a ist kleiner als b.
Teste die Beispiele in der Pythonshell!
Kommentare beginnen in Python hinter dem Zeichen #. Alles, was dahinter steht, wird bis zum Zeilenende vom Pythoninterpreter ignoriert. Mit Kommentaren wird der Quellcode für den Programmierer und für andere besser lesbar.
>>> print("Hallo Welt") #gibt "Hallo Welt" aus! Hallo Welt!
Teste das Beispiel!
In Python unterscheidet man die folgenden grundlegenden Datentypen:
-3 ; 4 ; 35
Python kennt beliebig große ganze Zahlen. Der Wertebereich ist also nicht eingeschränkt.
1.0, 2.234, 0.12e17, 0.23E-3
Bei Dezimalzahlen in Python wird der Punkt und nicht das Komma benutzt. Zum Abtrennen des Exponenten kann man e oder E benutzen. Nach dem e folgt der Exponent. Es sind auch negative Exponenten möglich.
"Zeichenkette 1" 'Zeichenkette 2' """Zeichenkette über mehrere Zeilen"""
Zeichenketten (Strings) können in Python in einfache '
oder in doppelte "
Hochkommas geklammert werden. Eine mehrzeilige Zeichenkette beginnt und endet mit drei Doppelten Hochkommas """
. Weitere Informationen zu Zeichenketten findet man um Abschnitt Strings.
True, False
Variablen sind Platzhalter für Werte. In Python muss der Name einer Variablen mit einen Buchstaben oder einem Unterstrich beginnen. Ansonsten sind in Variablennamen Buchstaben (seit Python 3 auch Umlaute und das ß), Zahlen und der Unterstrich erlaubt. Die folgenden Python-Schlüsselworte sind nicht als Variablennamen erlaubt:
and, assert, break, class, continue, def, del, elif, else, except, exec, finally, for, from, global, if, import, in, is, lambda, not, or, pass, print,raise, return, try, while, yield
Mit dem Operator =
kann man in Python Variablen Werte zuweisen. Python ist eine dynamisch typisierte Sprache, d.h. der Typ der Variablen wird bei der Zuweisung durch den Datentyp des zugewiesenen Wertes festgelegt.
Beispiele für Wertzuweisungen:
n = 5 #Datentyp int x = 5.3 #Datentyp float zeichenkette = "Hallo Welt!" #Datentyp str antwort = True #Datentyp bool
Neben dem Zuweisungsoperator gibt es in Python noch weitere Operatoren. Wir unterscheiden die folgenden Operatorentypen:
Operator | Wirkung bei | ||
---|---|---|---|
int | float | str | |
+ | Addition | Addition | Verkettung |
- | Subtraktion | Subtraktion | |
* | Multiplikation | Multiplikation | |
/ | Division | Division | |
// | ganzzahlige Division | ganzzahlige Division | |
% | ganzzahliger Rest (Modulo) | Rest | |
** | Potenzieren | Potenzieren, Radizieren |
Operator | Wirkung |
---|---|
> | größer |
< | kleiner |
>= | größer gleich |
<= | kleiner gleich |
== | gleich |
!= | ungleich |
Operator | Wirkung |
---|---|
A and B | ist wahr, wenn A und B wahr sind |
A or B | ist wahr, wenn A oder B oder beide wahr sind |
not A | ist wahr, wenn A nicht wahr (falsch) ist |
Bei vielen Rechnungen mit Pythonausdrücken ergibt sich automatisch der korrekte Datentyp.
Beispiele:
>>> a = 5 # Datentyp int >>> b = 4 # Datentyp int >>> a/b # wird umgewandelt in Datentyp float 1.25 >>> a > b # Datentyp bool True
In manchen Fällen ist Python allerdings nicht in der Lage aus der Rechnung einen eindeutigen Datentyp zu ermitteln. Dann muss man mit Hilfe der Funktionen int()
, float()
und str()
einzelne Operanten in den gewünschten Datentyp umwandeln.
Beispiele:
>>> 5 + "5" # Fehlermeldung ... >>> str(5) + "5" # der erste Ausdruck wird in eine Zeichenkette umgewandelt '55' >>> 5 + int("5") # der zweite Ausdruck wird in eine ganze Zahl umgewandelt 10 >>>
Teste die Beispiele in der Pythonshell!
Eigentlich lässt sich der Datentyp eines Ergebnisses in der Pythonshell immer recht gut erkennen. Ganze Zahlen (int) werden einfach als Zahlen dargestellt. Dezimalzahlen (float) erkennt man am Dezimalpunkt und Zeichenketten stehen in Anführungsstrichen. In Python gibt es aber noch mehr und auch komplexere Datentypen, die nicht so einfach erkennbar sind. In diesem Fall kann man die Funktion type()
verwenden um den Datentyp zu ermitteln.
>>> 5*"A" 'AAAAA' >>> type(5*"A") <class 'str'> >>> 5/7 0.7142857142857143 >>> type(5/7) <class 'float'> >>> 5>7 False >>> type(5>7) <class 'bool'>
Im folgenden Jupyternotebook finden sich einige Übungsaufgaben zum Thema.
Im Lehrbuch inf-Schule wird das Thema nochmal vertieft: