Название: Routineaufgaben mit Python automatisieren
Автор: Al Sweigart
Издательство: Bookwire
Жанр: Математика
isbn: 9783960889571
isbn:
>>> people = ['Alice', 'Bob', 'Carol', 'David']
>>> random.shuffle(people)
>>> people
['Carol', 'David', 'Alice', 'Bob']
>>> random.shuffle(people)
>>> people
['Alice', 'David', 'Bob', 'Carol']
Erweiterte Zuweisungsoperatoren
Nachdem Sie einer Variablen einen Wert zugewiesen haben, werden Sie sie im weiteren Verlauf gewöhnlich noch oft verwenden. Im folgenden Beispiel wird der Variablen spam zunächst der Wert 42 zugewiesen, der dann später um 1 erhöht wird:
>>> spam = 42
>>> spam = spam + 1
>>> spam
43
Als Kurzschreibweise können Sie dazu auch den erweiterten Zuweisungsoperator += verwenden:
>>> spam = 42
>>> spam += 1
>>> spam
43
Wie Sie in Tabelle 4–1 sehen, gibt es erweiterte Zuweisungsoperatoren für +, -, *, / und %:
Erweiterter Zuweisungsoperator | Entsprechende Zuweisungsanweisung |
spam += 1 | spam = spam + 1 |
spam -= 1 | spam = spam - 1 |
spam *= 1 | spam = spam * 1 |
spam /= 1 | spam = spam / 1 |
spam %= 1 | spam = spam % 1 |
Tab. 4–1 Erweiterte Zuweisungsoperatoren
Der Operator += kann auch für die String- und Listenverkettung eingesetzt werden, der Operator *= auch für String- und Listenwiederholung. Geben Sie Folgendes in die interaktive Shell ein:
>>> spam = 'Hello'
>>> spam += ' world!'
>>> spam
'Hello world!'
>>> bacon = ['Zophie']
>>> bacon *= 3
>>> bacon
['Zophie', 'Zophie', 'Zophie']
Methoden
Eine Methode ist eine Funktion, die für einen Wert aufgerufen wird. Wenn wir beispielsweise einen Listenwert in spam gespeichert haben, können wir die Listenmethode index() (die ich im Folgenden erklären werde) für diese Liste wie folgt aufrufen: spam.index('hello').
Jeder Datentyp verfügt über seinen eigenen Satz von Methoden. So hat der Listendatentyp beispielsweise einige sehr nützliche Methoden, um Elemente in einer Liste zu finden, hinzuzufügen, zu entfernen oder auf andere Weise zu bearbeiten.
Elemente in einer Liste mit der Methode index() finden
Für Listen gibt es die Methode index(). Wenn der ihr übergebene Wert in der Liste vorhanden ist, so gibt sie seinen Index zurück. Existiert der betreffende Wert in der Liste nicht, gibt Python den Fehler ValueError aus. Probieren Sie das wie folgt in der interaktiven Shell aus:
>>> spam = ['hello', 'hi', 'howdy', 'heyas']
>>> spam.index('hello')
0
>>> spam.index('heyas')
3
>>> spam.index('howdy howdy howdy')
Traceback (most recent call last):
File "<pyshell#31>", line 1, in <module>
spam.index('howdy howdy howdy')
ValueError: 'howdy howdy howdy' is not in list
Kommt ein Wert mehrfach in einer Liste vor, so wird der Index des ersten Auftretens zurückgegeben. Im folgenden Beispiel gibt index() nicht 3 zurück, sondern 1:
>>> spam = ['Zophie', 'Pooka', 'Fat-tail', 'Pooka']
>>> spam.index('Pooka')
1
Elemente mit den Methoden append() und insert() zu Listen hinzufügen
Um zu einer Liste neue Elemente hinzuzufügen, verwenden Sie die Methoden append() und insert(). Im folgenden Beispiel wird die Methode append() auf die Liste in der Variablen spam angewendet:
>>> spam = ['cat', 'dog', 'bat']
>>> spam.append('moose')
>>> spam
['cat', 'dog', 'bat', 'moose']
Wie Sie sehen, hängt die Methode append() ihr Argument an das Ende der Liste an. Mit insert() dagegen können Sie einen Wert an einer beliebigen Indexposition in der Liste einfügen. Das erste Argument von insert() ist der Index für den neuen Wert, das zweite der einzufügende Wert. Geben Sie Folgendes in die interaktive Shell ein:
>>> spam = ['cat', 'dog', 'bat']
>>> spam.insert(1, 'chicken')
>>> СКАЧАТЬ