Python Spick

Ich werde diesen Beitrag jeweils erweitern, wenn ich eine neue Funktion von Python verwende.

for Schleifen

In Python ist die for-Schleife ein wenig anders als in Java oder C++. In Python dient die for-Schleife zur Iteration über ein Sequenz von Objekten.

Beispiel
tiere = ["Affe", "Elefant", "Giraffe", "Schlängli"]
for x in tiere:
    print x

Besonders praktisch ist die „range“ Funktion in Verbindung mit einer for Schleife. Die folgende Schleife gibt etwa alle Zahlen von 0 bis 10 aus:

n = 10
for i in range(1, n+1):
    print i

Ganz hübsch isch die for Schleife mit dem Unterstrich:

for _ in range(10):
    print("geheimen Code")

Die range Funktion erzeugt bekannterweise ganze Zahlen als Integer beginnend bei Null:

range(3) == [0, 1, 2].

Nun möchte man den geheimen Code 10 mal ausgeben, benötigt aber keine Laufvariable. Dafür wird in Python oft „_“ verwendet – Quasi eine Wegwerfvariable, die nicht in der eigentlichen for-Schleife verwendet wird.

Die Zip Funktion

Die zip() Funktion gibt eine Liste von Tupeln zurück, wobei der i-te Tupel jeweils das i-te Element von jedem Argument enthält.

x = [1, 2, 3]
y = [4, 5, 6]
zipped = zip(x, y)
Resultat: zipped = [(1, 4), (2, 5), (3, 6)]

Python Objektorientierung

Eine Klasse in Python wird einfach mit „class“ erstellt.

Man sollte sich nicht von dem „self“ verwirren lassen: Der erste Parameter einer Methode ist immer eine Referenz self auf die Instanz, von der sie aufgerufen wird.
Der Parameter self erscheint nur bei der Definition einer Methode. Beim Aufruf wird er nicht angegeben, dort hat es also immer einen Parameter weniger.

#file tierfile.py
class Tier(object):
    def __init__(self, anzahlFuesse=4):
        self.anzahlFuesse = anzahlFuesse
 
    def machWas(self):
        print("Hallo ich bin ein Tier")

Ein Tier erstellt man dann folgendmassen. Kein new, keine Typisierung, gar nichts deshalb vorsicht!

import tierfile 
huhn = tierfile.Tier(anzahlFuesse=2)
Werbeanzeigen

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s