Zum Inhalt

Python

📅 Erstellt: 28.06.2022 🔄 Aktualisiert: 22.08.2026

Changelog.

2022-07-06 - Erster Entwurf

Inhaltsverzeichnis.

Grundlagen

Moin!

So, wir starten hier die Mitschrift des Python Tutorials vom lieben Gravitar auf YouTube; Unbekannterweise Grüße von mir :-) Die Videoreihe erstreckt sich mittlerweile von 2018 bis dato, Juni 2022.

Das ganze ist hier zu finden: Python Tutorial nach Gravitar - In seiner Python YouTube Playlist

#1a Installation Python, Visual Studio Code und GitHub.

Python-Installation

Wie im Video mache auch ich eine Custom-Installation. Mein Python (3.9.5) Ordner liegt momentan auf C:\Python auch bei mir ohne Versionsnummer.
Stand heute (06.07.2022) gibt es bereits 3.10.5 und diese werde ich updaten.

bc6a86636f612892d5148b4a4ba15a65.png
c5f1dcf34cbbce2f1d60d38dff626a16.png
21b0a0ddfc43ef1476d02bf856543236.png

Zu Visual Studio Code und Github kann man der o.g. Videoanleitung folgen.
Etwaige Kommentare dazu können ggf. folgen.

Github

Auf Github habe ich mal ein privates Repository erstellt, dieses wird nun für VSC verwendet:
6d7dd28238543088df588098b1fa5e05.png
Dafür habe ich mir dann lokal in Windows einen Projektordner in OneDrive ausgewählt.

VSC Einstellungen

Sind soweit bei mir erstmal alle default oder minimal geändert, sodass es hier keinen Text bedarf.

#1b Programm in VSCode starten.

Hier kann man sich ansehen wie man Python (und andere) Dateien starten und debuggen kann, sowie die Tasten selbst belegen kann. Sollte man sich mal mitnehmen.

#1c TOP 10 Python Funktionen.

Der Pythonic Way of Life :D
Hier der Link zum YouTube Video.

10.) Unpacking

koordinate = (120,40)

# Andere Programmiersprachen

x = koordinate[0]
y = koordinate[1]

# Umsetzung in Python (= pythonic)

x,y = koordinate

09.) Swapping

Variableninhalte vertauschen

a = 10
b = 20

# Andere Programmiersprachen

tmp = a
a = b
b = tmp
print(a,b)

# Umsetzung in Python (= pythonic)

a,b = b,a
print(a,b)

08.) True oder False

liste = [1]

# Andere Programmiersprachen

if len(liste) > 0:
    tu irgendwas

# Umsetzung in Python (= pythonic)

if liste:
    tu irgendwas

# Eine leere Liste ist immer False
# Zahl = 0 = False, leere String = False usw.

07.) Ternary Operator

alter = 20

# Andere Programmiersprachen

if alter > 17:
    erwachsen = True
else:
    erwachsen = False

# Umsetzung in Python (= pythonic)

erwachsen = True if alter > 17 else False

06.) Split

# Andere Programmiersprachen

rollen = ["Brian", "Stan", "Judith", "Pontius", "Centurio"]
print(rollen)

# Umsetzung in Python (= pythonic)

rollen = "Brian Stan Judith Pontius Centurio".split()

05.) List Comprehension

Ein Poker Kartendeck aufbauen
Suits = Farben: Spades, Hearts, Diamonds, Clubs
Values = Werte: von 2-10, 11 (Bube), 12 (Dame), 13 (König), 14 (Ass)

poker_card_deck = []
suits = ["s", "h", "d", "c"]

# Andere Programmiersprachen

for suit in suits:
    for value in range(2,15):
        poker_card_deck.append((value,suit))

# Umsetzung in Python (= pythonic)

poker_card_deck = [(v,s) for s in "shdc" for v in range(2,15)]

04.) Beliebige Genauigkeit

# Andere Programmiersprachen

print(f'{2**64-1:e}')

# Umsetzung in Python (= pythonic)

print(2**64-1)

Ergebnis:

Andere: 1.844674e+19
Python: 18446744073709551615

03.) Element in iterable

Suche Element mit Wert 7

liste = [1, 2, 3, 7]

# Andere Programmiersprachen

for element in liste:
    if element == 7:
        print("enthalten")

# Umsetzung in Python (= pythonic)

if 7 in liste:
    print("enthalten")

02.) Letztes Element

Zugriff auf letztes Element der Liste

liste = [1, 2, 3, 7]

# Andere Programmiersprachen

print(liste[len(liste)])

# Umsetzung in Python (= pythonic)

print(liste[-1])

# Äquivalent vorletztes Element liste[-2] etc.

01.) For item in List

liste = [1, 2, 3, 4, 5, 9, 15, 99, 23]

# Andere Programmiersprachen

for i in range(0, len(liste)):
    print(liste[i])

# Umsetzung in Python (= pythonic)

for element in liste:
    print(element)

#2 Reiskörner auf dem Schachbrett.

YouTube Folge: Hier!
Vgl. hierzu Sissa Ibn Dahir auf de.wikipedia.org

Der Code

436338300b8b7009d66d8ec2deac2979.png

Zeile(n) Erklärung
01-03 Sog. "Doc-String", Dokumentenkopf mit Erklärung etc.
05 Festlegen der Summe auf 0
08 Schleife starten, Variable feld nimmt Zahl zwischen 0-63 an
09-10 Berechnung
11-12 Ausgabe, {} sind Platzhalter für nachfolgende .format Funktion, {:>30,} = rechtsbündig 30 Zeichen, Tausendertrennzeichen ,
16 {,.0f} = Tausendertrennzeichen , und 0 Nachkommastellen der Fließkommazahl.
[Erklärung Teil 02]

#3 Chart plotten mit der Matplotlib.

YouTube Folge: Hier!
matplotlib Referenz Beispiel matplotlib.pyplot: Hier!

Troubleshooting?!

*Achtung!
Sollte es hier Probleme geben mit der
matplotlib dann sollte man das Paket inkl. ALLER Abhängigkeiten updaten. Sowie vorher auch pip selbst via: python.exe -m pip install -U pip
Welche Pakete matplotlib in Abhängigkeiten hat sieht man hier:

PS C:\Users\Benutzername> pip show matplotlib
Name: matplotlib
Version: 3.5.2
Summary: Python plotting package
Home-page: https://matplotlib.org
Author: John D. Hunter, Michael Droettboom
Author-email: matplotlib-users@python.org
License: PSF
Location: c:\python\lib\site-packages
Requires: cycler, fonttools, kiwisolver, numpy, packaging, pillow, pyparsing, python-dateutil
Required-by:

Aus
Requires:* alle Pakete upgraden mit: pip install -U <Paketname>

Der Code

9741eaa61ebc45725b1216a421e41600.png

Zeile(n) Erklärung
09 Die matplotlib.pyplot Bibliothek als plt verwenden
14 Initialisierung der leeren Liste reis
19 Anzahl der Reiskörner an die Liste reis anhängen (befüllen)
23 Statt summe = summe + ... kann hier summe += ... geschrieben werden
30 Die print() Funktion mit print(f...) erlaubt nun die Variablen direkt in die {} Felder hineinzuschreiben statt Platzhalter mit anschließendem .format zu verwenden
40 Zeichnen des Plots, der Befehl plt.plot(reis) ist wie aus Zeile 09 importiert und verkürzt äquivalent zu matplotlib.pyplot.plot(reis)
41 Anzeige des Plots
[Erklärung Teil 03]

#4 Die Kreiszahl Pi visualisieren

YouTube Folge: Hier!
Ghostscript: Hier!

Lesevorschläge:
* Kreiszahl auf Wikipedia
* Pi mit einer Millionen Stellen
* Visualisierung von Pi

Der Code

Zeile(n) Erklärung
[Erklärung Teil 04]

#5 Text mit Word Cloud visualisieren

YouTube Folge: Hier!
Wordcloud precompiled: Hier!
Textbeispiel "Alice": Hier!

#6 Twitter Nachrichten mit Word Cloud visualisieren

YouTube Folge: Hier!
Tweepy Dokumentation: Hier!

Sonderaufgaben.

Einfacher Web-Scraper.

Zwei Videos dazu von "Programmieren lernen mit Chris :rakete:":

Einfacher Web-Scraper (2021)
Unser erster Web-Scraper (2022)

Benötigt von pip:
- beautifulsoup4
- requests

f am Anfang des Strings = formatierter String

Allgemeine Notizen bzw. Methoden.

Range

If-Then-Else

Bla

Cheatsheet

Tastenkombination Funktion
Editor
Alt-Shift-F Autoformat
Allgemein
F1 Befehlsmenü öffnen
*Strg-F5 Programm MIT Debugging starten
*F5 Programm OHNE Debugging starten
*F9 Python in Terminal starten
*Strg-F9 Debuggen: Haltepunkt umschalten
[Cheatsheet]

* selbst konfiguriert