14
2 Erste Schritte mit Python und Jupyter
Dieses Tutorial ist das erste einer Reihe anfängerfreundlicher Tutorials zum Programmieren und zur Datenanalyse mit Python. Diese Tutorials basieren auf einem praktischen, programmbasierten Ansatz. Der beste Weg, das Material zu erlernen, besteht darin, den Code auszuführen und mit den Beispielen zu experimentieren.
Die folgenden Themen werden in diesem Tutorial behandelt:
- Ausführen des Codes
- Arithmetische Operationen mit Python ausführen
- Mehrstufige Probleme mithilfe von Variablen lösen
- Bedingungen mit Python auswerten
- Bedingungen mit logischen Operatoren verbinden
- Hinzufügen von Textstilen mithilfe von Markdown
2.1 Ausführen des Codes
Dieses Tutorial ist ein ausführbares Jupyter Notebook. Sie können dieses Tutorial ausführen und mit den Codebeispielen experimentieren, indem Sie es auf Ihrem eigenen Computer ausführen.
Ausführen auf Ihrem eigenen Computer
Um dieses Notebook auf Ihrem Computer auszuführen, müssen Sie Python über die Anaconda-Distribution einrichten und das Notebook herunterladen. Hier sind die Schritte, die Sie befolgen müssen, um loszulegen:
Laden Sie die Anaconda-Distribution herunter und installieren Sie sie auf Ihrem Computer. Anaconda ist eine kostenlose Distribution von Python und R, die sich besonders für Data Science und Machine Learning eignet. Sie enthält bereits die meisten Bibliotheken, die Sie benötigen werden.
Nach der Installation können Sie den “Anaconda Navigator” öffnen, eine Art Dashboard, das Sie durch Ihre Anaconda-Installation führt. Der Navigator ermöglicht den Zugriff auf die verschiedenen Softwarepakete, Umgebungen und Tools, die Teil der Anaconda-Distribution sind.
Im Anaconda Navigator, finden Sie “Jupyter Notebook” unter der Liste der installierten Anwendungen. Klicken Sie auf “Launch”, um Jupyter Notebook zu starten.
Ein neues Browserfenster sollte sich öffnen, in dem Sie die Verzeichnisstruktur Ihres Computers sehen. Navigieren Sie zu dem Ordner, in dem Sie Ihr Jupyter Notebook gespeichert haben, und klicken Sie darauf, um es zu öffnen.
Jetzt können Sie das Jupyter Notebook verwenden! Es besteht aus Zellen, die Text (in Markdown) oder Code (in Python) enthalten können. Sie können eine Zelle ausführen, indem Sie sie auswählen und dann
Shift+Enterdrücken. Der Code wird ausgeführt und das Ergebnis wird unter der Zelle angezeigt.Wenn Sie mit Ihrer Sitzung fertig sind, können Sie das Jupyter Notebook speichern und schließen. Vergessen Sie nicht, auch den Anaconda Navigator zu schließen.
Beachten Sie, dass Sie mit Anaconda auch verschiedene Umgebungen für verschiedene Projekte erstellen können. Jede Umgebung kann ihre eigenen spezifischen Pakete und Versionen haben, sodass Sie sicherstellen können, dass Ihre Projekte isoliert voneinander laufen und nicht miteinander interferieren. Sie können Umgebungen direkt im Anaconda Navigator erstellen und verwalten.
2.2 Arithmetische Operationen mit Python ausführen
Beginnen wir mit der Verwendung von Python als Taschenrechner. Sie können Python mithilfe einer Codezelle in Jupyter schreiben und ausführen.
Arbeiten mit Zellen: Um eine neue Zelle in Jupyter zu erstellen, können Sie in der Menüleiste
Einfügen > Zelle darunter einfügenauswählen oder einfach die Schaltfläche+in der Symbolleiste drücken. Sie können auch die TastenkombinationEsc+Bverwenden, um eine neue Zelle zu erstellen. Sobald eine Zelle erstellt wurde, klicken Sie darauf, um sie auszuwählen. Anschließend können Sie den Zelltyp mithilfe der MenüoptionZelle > ZelltypinCodeoderMarkdown(Text) ändern. Sie können auch die TastenkombinationenEsc+YundEsc+Mverwenden. Doppelklicken Sie auf eine Zelle, um den Inhalt innerhalb der Zelle zu bearbeiten. Um Ihre Änderungen zu übernehmen und eine Zelle auszuführen, verwenden Sie die MenüoptionZelle > Zellen ausführen, klicken Sie auf die SchaltflächeAusführenin der Symbolleiste oder verwenden Sie einfach die TastenkombinationShift+Enter. Eine vollständige Liste der Tastaturkürzel können Sie über die Menüoption „Hilfe > Tastaturkürzel“ anzeigen.
Führen Sie die folgenden Codezellen aus, um Berechnungen durchzuführen und deren Ergebnisse anzuzeigen. Versuchen Sie, die Zahlen zu ändern, und führen Sie die geänderten Zellen erneut aus, um aktualisierte Ergebnisse anzuzeigen. Können Sie erraten, wofür die Operatoren //, % und ** verwendet werden?
Wie Sie vielleicht erwarten, haben bestimmte Operatoren wie / und * gemäß mathematischen Konventionen Vorrang vor anderen Operatoren wie + und -. Sie können Klammern verwenden, z. B. ( und ), um die Reihenfolge anzugeben, in der Vorgänge ausgeführt werden.
Python unterstützt die folgenden arithmetischen Operatoren:
| Operator | Zweck | Beispiel | Ergebnis |
|---|---|---|---|
+ |
Addition | 2 + 3 |
5 |
- |
Subtraktion | 3 - 2 |
1 |
* |
Multiplikation | 8 * 12 |
96 |
/ |
Division | 100 / 7 |
14.28.. |
// |
Ganzzahlige Division | 100 // 7 |
14 |
% |
Modulus/Rest | 100 % 7 |
2 |
** |
Exponent | 5 ** 3 |
125 |
2.3 Mehrstufige Probleme mithilfe von Variablen lösen
Versuchen wir, die folgende Textaufgabe mit Python zu lösen:
Ein Lebensmittelgeschäft verkauft eine Tüte Eis für 1,25 $ und macht 20% Gewinn. Wenn es 500 Beutel Eis verkauft, wie hoch ist dann der Gesamtgewinn?
Wir können die uns zur Verfügung stehenden Informationen systematisch zusammentragen und die Aufgabenstellung nach und nach in eine mathematische Formel überführen, die wir dann mithilfe von Python auswerten können.
Cost of ice bag ($) = 1.25
Profit margin = 20% = .2
Profit per bag ($) = profit margin * cost of ice bag = .2 * 1.25
No. of bags = 500
Total profit = no. of bags * profit per bag = 500 * (.2 * 1.25)
Somit erzielt das Lebensmittelgeschäft einen Gesamtgewinn von 125,0 $. Obwohl dies eine vernünftige Möglichkeit ist, ein Problem zu lösen, wird aus der Codezelle nicht ganz klar, was die Zahlen darstellen. Wir können jeder Zahl einen Namen geben, indem wir Python-Variablen erstellen.
Variablen: Beim Arbeiten mit einer Programmiersprache wie Python werden Informationen in Variablen gespeichert. Sie können sich Variablen als Container zum Speichern von Daten vorstellen. Die in einer Variablen gespeicherten Daten werden als Wert bezeichnet.
Die Variablen cost_of_ice_bag, profit_margin and number_of_bags enthalten nun die in der Textaufgabe bereitgestellten Informationen. Wir können den Wert einer Variablen überprüfen, indem wir ihren Namen in eine Zelle eingeben, und wir können Variablen mithilfe arithmetischer Operationen kombinieren, um andere Variablen zu erstellen.
Tipp: Während Sie den Namen einer vorhandenen Variablen in eine Codezelle in Jupyter eingeben, können Sie die ersten paar Zeichen eingeben und die “Tabulatortaste“
Tabdrücken, um den Variablennamen automatisch zu vervollständigen. Geben Sieproin eine Codezelle unten ein und drücken Sie die Tabulatortaste, um die automatische Vervollständigung zuprofit_margindurchzuführen.
Wenn Sie versuchen, den Wert einer Variablen anzuzeigen, die nicht definiert ist, d. h. ihr mit der Zuweisungsanweisung Variablenname = Wert ein Wert zugewiesen wurde, zeigt Python einen Fehler an.
Das Speichern und Bearbeiten von Daten mithilfe entsprechend benannter Variablen ist eine hervorragende Möglichkeit, die Funktionsweise Ihres Codes zu erklären.
Lassen Sie uns das Ergebnis der Textaufgabe mit einer freundlichen Nachricht anzeigen. Wir können dies mit der print Funktion tun.
Funktionen: Eine Funktion ist ein wiederverwendbarer Satz von Anweisungen. Eine Funktion nimmt eine oder mehrere Eingaben entgegen, führt bestimmte Operationen aus und gibt häufig eine Ausgabe zurück. Python bietet viele integrierte Funktionen wie
The grocery store makes a total profit of $ 125.0
Das ist Text), Zahlen, Variablen, mathematische Ausdrücke usw. handeln kann. Im nächsten Abschnitt erfahren Sie mehr über Variablen und Funktionen.
Das Erstellen einer Codezelle für jede Variable oder mathematische Operation kann mühsam sein. Glücklicherweise können Sie mit Jupyter mehrere Codezeilen in einer einzigen Codezelle schreiben. Schreiben wir die Lösung unseres Wortproblems in einer einzigen Zelle um.
Code
# Speichern Sie Eingabedaten in Variablen
cost_of_ice_bag = 1.25
profit_margin = .2
number_of_bags = 500
# Führen Sie die erforderlichen Berechnungen durch
profit_per_bag = cost_of_ice_bag * profit_margin
total_profit = number_of_bags * profit_per_bag
# Ergebnis anzeigen
print("The grocery store makes a total profit of $", total_profit)The grocery store makes a total profit of $ 125.0
Beachten Sie, dass wir das Zeichen # verwenden, um Kommentare in unseren Code einzufügen.
Kommentare: Kommentare und Leerzeilen werden während der Ausführung ignoriert, sind aber nützlich, um anderen Menschen (einschließlich Ihnen selbst) Informationen darüber zu geben, was der Code tut. Kommentare können inline (am Ende eines Codes), in einer separaten Zeile oder sogar über mehrere Zeilen hinweg erfolgen.
Inline- und einzeilige Kommentare beginnen mit #, während mehrzeilige Kommentare mit drei Anführungszeichen beginnen und enden, z. B. “““. Hier sind einige Beispiele für Codekommentare:
Code
"""Das ist ein mehrzeiliger Kommentar.
Schreibe so wenig oder so viel wie du möchtest.
Kommentare sind sehr hilfreich für Leute, die
deinen Code lesen, aber versuche sie kurz und prägnant zu halten.
Außerdem, wenn du gute Variablennamen verwendest, dann ist dein Code
oft selbsterklärend und du benötigst vielleicht nicht einmal Kommentare!
"""
a_neutral_number = 52.4 Bedingungen mit Python auswerten
Neben arithmetischen Operationen bietet Python auch mehrere Möglichkeiten zum Vergleichen von Zahlen und Variablen.
| Operator | Beschreibung |
|---|---|
== |
Überprüfen, ob die Operanden gleich sind |
!= |
Überprüfen, ob die Operanden ungleich sind |
> |
Überprüfen, ob der linke Operand größer als der rechte ist |
< |
Überprüfen, ob der linke Operand kleiner als der rechte ist |
>= |
Überprüfen, ob der linke Operand größer oder gleich dem rechten ist |
<= |
Überprüfen, ob der linke Operand kleiner oder gleich dem rechten ist |
Das Ergebnis einer Vergleichsoperation ist entweder True oder Falsch (beachten Sie die Großbuchstaben T und F). Dies sind spezielle Schlüsselwörter in Python. Probieren wir ein Experiment mit Vergleichsoperatoren aus.
Ebenso wie arithmetische Operationen kann auch das Ergebnis einer Vergleichsoperation in einer Variablen gespeichert werden.
Code
Is the ice bag expensive? False
2.5 Bedingungen mit logischen Operatoren verbinden
Die logischen Operatoren and, or und not wirken auf Bedingungen und True & False Werte (auch bekannt als boolesche Werte). and und or wirken auf zwei Bedingungen, während not auf eine einzelne Bedingung wirkt.
Der Operator and gibt True zurück, wenn beide Bedingungen zu True ausgewertet werden. Andernfalls gibt er False zurück.
a |
b |
a and b |
|---|---|---|
True |
True |
True |
True |
False |
False |
False |
True |
False |
False |
False |
False |
Der Operator or gibt True zurück, wenn mindestens eine der Bedingungen zu True ausgewertet wird. Er gibt False nur zurück, wenn beide Bedingungen False sind.
a |
b |
a oder b |
|---|---|---|
True |
True |
True |
True |
False |
True |
False |
True |
True |
False |
False |
False |
Der not-Operator gibt False zurück, wenn eine Bedingung True ist, und True, wenn die Bedingung False ist.
Logische Operatoren können zu komplexen Bedingungen kombiniert werden. Verwenden Sie runde Klammern oder Klammern ( und ), um die Reihenfolge anzugeben, in der logische Operatoren angewendet werden sollen.
Wenn keine Klammern verwendet werden, werden logische Operatoren von links nach rechts angewendet.
Experimentieren Sie mit arithmetischen, bedingten und logischen Operatoren in Python und nutzen Sie dabei die interaktive Natur des Jupyter-Notebooks. Wir werden in zukünftigen Tutorials mehr über Variablen und Funktionen erfahren.
2.6 Textstile mit Markdown hinzufügen
Das Hinzufügen von Erklärungen mithilfe von Textzellen (wie dieser) ist eine großartige Möglichkeit, Ihr Notizbuch für andere Leser und für Sie selbst informativ zu gestalten, wenn Sie in Zukunft darauf zurückgreifen müssen. Doppelklicken Sie auf eine Textzelle in Jupyter, um sie zu bearbeiten. Im Bearbeitungsmodus werden Sie feststellen, dass der Text etwas anders aussieht (z. B. hat die Überschrift ein ##-Präfix). Dieser Text wird mit Markdown geschrieben, einer einfachen Möglichkeit, Ihrem Text Stile hinzuzufügen. Führen Sie diese Zelle aus, um Sehen Sie sich die Ausgabe ohne Sonderzeichen an. Sie können zwischen der Quelle und der Ausgabe hin und her wechseln, um zu sehen, wie ein bestimmter Stil erstellt wird.
Sie können beispielsweise ein oder mehrere #-Zeichen am Anfang einer Zeile verwenden, um Kopfzeilen unterschiedlicher Größe zu erstellen:
# Kopfzeile 1
## Kopfzeile 2
### Kopfzeile 3
#### Kopfzeile 4
Um eine Liste mit Aufzählungszeichen oder Nummern zu erstellen, beginnen Sie einfach eine Zeile mit * oder 1..
Eine Liste mit Aufzählungszeichen:
- Item 1
- Item 2
- Item 3
Eine nummerierte Liste:
- Apfel
- Banane
- Ananas
Sie können Text mit ** fett formatieren, z. B. **Dies ist ein fetter Text**, oder machen Sie ihn kursiv mit *, z. B. *Dies ist ein kursiver Text.* Sie können auch Links erstellen, z. B. [Dies ist ein Link](https://www.ku.de/wfi). Auch Bilder lassen sich ganz einfach einbetten:

Ein weiteres wirklich nettes Feature von Markdown ist die Möglichkeit, Codeblöcke einzubinden. Beachten Sie, dass Codeblöcke innerhalb von Markdown-Zellen nicht ausgeführt werden können.
# Perform the required calculations
profit_per_bag = cost_of_ice_bag * profit_margin
total_profit = number_of_bags * profit_per_bag
# Display the result
print("The grocery store makes a total profit of $", total_profit)
Die vollständige Syntax von Markdown können Sie hier erfahren: https://learnxinyminutes.com/docs/markdown/
2.7 Weiterführende Literatur und Referenzen
Im Folgenden finden Sie einige Ressourcen zum Erlernen weiterer arithmetischer, bedingter und logischer Operationen in Python: