Show Menu
Cheatography

Python 3 Grundlagen Cheat Sheet (DRAFT) by [deleted]

Einführung in die Programmierung mit Python

This is a draft cheat sheet. It is a work in progress and is not finished yet.

Nützliche Links

Offizielle Python 3.6 Dokume­ntation
https:­//d­ocs.py­tho­n.o­rg/3.6/
Stacko­verflow mit Tag für Python 3
https://stackoverflow.com/questions/tagged/pyt
hon-3.x

Häufige Fehler

Beschr­eibung
der Fehler­ursache
falsch statt
richtig
Groß-/Kleinschreibung
inkorrekt
wahr = true

statt
wahr = True
Leere Klammer fehlt nach Funkti­onsname
sprite.down

statt
sprite.down()
Gleitk­omm­azahl in Komma-
Schreibweise
meinFloat = 1,37

statt
meinFloat = 1.37

Datentypen

Typ
Beispi­elwerte
Deklar­ation
Integer
-23, 42, 5
ganzzahl = 1
Float
-1.72, 3.141
gleitzahl = 1.3
String
"­Hi", "Hey du!"
text = 'Hallo'
Boolean
True, False
wahrheit = False
Tupel
(1, 2, 3), ('Eins', 2, 3.45)
unvera­end­erbar = (1, 2, 3)
Liste
[1, 2, 3], ['Eins', 2, 3.45]
veraen­derbar = [1, 2, 3]
Dictionary
{name:­'hans', alter: 7,...}
person = {name: 'Hans', alter: 7}
Iterator
string, range, andere Objekte
irgendwas = range(7)

Ausgabe

print(­'Hello World')
Einzelner String
print(­'Hi', end='')
Ohne Zeilen­umbruch
print()
Leere Zeile
name = 'John' 
print(­'He­llo', name)
String und Variable
Format­iert: (z.B. zwei Nachko­mma­ste­llen)
waehrung = 'Euro'

kosten = 3.1572

print(­'Be­trag: {:.2f} {}'.fo­rma­t(k­osten, waehrung))

>>> Preis: 3.15 Euro

Eingabe

eingabe = input('Eingabe: ')
try:
    eingabe = int(eingabe)
except ValueError as err:
    print('Fehler! Keine Ganzzahl!')
    print('Meldung: {}'.format(err))
Der Datentyp von input() ist immer String, daher ggf. in anderen Datentyp umwandeln und dabei Fehler­beh­andlung nutzen.
Nicht die Funktion eval() zur Umwandlung nutzen!

Operator

x+y
Addition
x-y
Subtra­­ktion
x*y
Multip­­li­k­ation
x/y
Division
x**y
Expone­­nt­i­ation
x%y
Modulo
(Rest bei ganzah­liger Division)

Funktionen deklar­ieren

# Allgemein:
def <FunktionsName>(<Parameter>):
    <Anweisungen>
    return <Rückgabewert>

# Beispiel:
def addiere(x, y):
    ergebnis = x + y
    return ergebnis

Bedingte Ausführung

# Allgemein:
if <bedingung>:
    <anweisungen>
elif <andere_bedingung>:
    <andere_anweisungen>
else:
    <weitere_anweisungen>

# Beispiel:
x = 7
if x == 5:
    print('Die Zahl ist eine Fünf')
elif x == 7:
    print('Die Zahl ist eine Sieben')
else:
    print('Die Zahl ist weder 5 noch 7')
Der elif-Block ist optional und kann beliebig oft verwendet werden.

Beding­ungen

<
kleiner als
wert < 10
>
größer als
wert > 5
==
gleich
wert == 23
passwort == "­geh­eim­"
<=
kleiner gleich
5 <=7
>=
größer gleich
8 >= 5
!=
ungleich
78 != 93
"­Pet­er" != "­pet­er"
in
(entha­lten) in
"­b" in "Libelle"
"­pet­er" in userListe
not in
nicht in
"­y" not in "Vogel"
"­pet­er" not in userListe
 

Wieder­­ho­l­ungen / Schleifen

# for-Schleife
for i in range(0,10):
    print('Durchlauf Nr.', i)

# while-Schleife
x = 5
while x > 0:
    print('x: {}'.format(x))
    x -= 1

# Funktionen zur Schleifensteuerung
for i in range(0,10):
    if i == 3:
        continue   # Nächster Durchlauf
    if i == 7:
        break      # Abbruch der Schleife
   print(i, new=', ')
>>> 0, 1, 2, 4, 5, 6,

Fehler­beh­andlung

# Allgemein
try:
    # Anweisungen
except ExceptionType as err:
    # Anweisungen
    # Zugriff auf Fehlermeldung: err
except:
    # Anweisungen
   
# Beispiel
def teilen(a, b):
    ergebnis = None
    try:
        ergebnis = a / b
    except ZeroDivisionError as err:
        print('Fehler: Division durch Null!')
        print('Meldung: {}'.format(err))
    return ergebnis

print(teilen(15, 0))
Exce­p­ti­­onType möglichst explizit angeben

Arbeiten mit Strings

len(m­­yStr)
Anzahl der Zeichen von m­yStr
m­yStr.lo­­wer() 
m­yStr.up­­per()
Umwandlung zu Klein-­/Gr­oßb­­uc­h­s­taben
m­yStr.replace(old,new)
Ersetzt in myStr 'old' durch 'new'
m­yStr.sp­lit­(char)
Teilt an 'char' auf, erzeugt Liste
m­yStr.st­rip()
Entfernt Leerze­ichen (white­space) am Anfang und Ende von myStr
m­yStr­[1:5]
Zeichen 1-5 aussch­­neiden

Arbeiten mit Listen

len(m­­yList)
Anzahl der Elemente
x in myList
True, wenn x ein Element in myList
myList.append(x)
x an myList anhängen
myList[i] = x
Element an Stelle i ersetzen durch x
'c'.jo­in(­myList)
Verbindet Elemente der Liste zu einem String, getrennt durch c
Iterieren über Listen (ohne Index)
for element in myList:

 ­ ­ ­ ­pri­nt(­'We­rt:', element)


Iterieren über Listen (mit Index)
for i, element in enumer­ate­(my­List):

 ­ ­ ­ ­pri­nt(­'Po­sit­ion:', i)

 ­ ­ ­ ­pri­nt(­'We­rt:', element)

Slicing von Listen (incl. Strings)

Beispiele
myList­[-1­]   # letztes Element

myList­[-2­:]  # letzten 2 Elemente

myList­[:-­2]  # alles bis auf die letzten zwei

myList­[2:­-1:­2] # Vom dritten bis vorletzten Element, aber nur jedes zweite

Arbeiten mit Dictio­­naries

len(m­­yDict)
Anzahl der Einträge
del m­yDic­t[m­yKey]
Löscht Schlüssel myKey
list(­­m­y­Dic­t.k­e­ys())
Liste aller Schlüssel
list(m­yDict.values())
Liste aller Werte
list(m­­yD­ict.it­ems())
Liste von Tupeln
myKey in m­yDict
True, wenn myKey vorhanden
Iterieren über Dictio­naries:
m­yDict = {'name­':'­Peter', 'alter­':'19'}

for key, value in m­yDic­t.i­tems():

 ­ ­ ­ ­pri­nt(­'Sc­hlü­ssel:', key)

 ­ ­ ­ ­pri­nt(­'We­rt:', value)