Routineaufgaben mit Python automatisieren. Al Sweigart
Чтение книги онлайн.

Читать онлайн книгу Routineaufgaben mit Python automatisieren - Al Sweigart страница 51

Название: Routineaufgaben mit Python automatisieren

Автор: Al Sweigart

Издательство: Bookwire

Жанр: Математика

Серия:

isbn: 9783960889571

isbn:

СКАЧАТЬ import random

      >>> 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')

      >>> СКАЧАТЬ