| Next revision | Previous revision |
| lehrkraefte:snr:informatik:fachdidaktik:vorkenntnisse [2022/07/14 10:29] – created Olaf Schnürer | lehrkraefte:snr:informatik:fachdidaktik:vorkenntnisse [2022/07/19 10:26] (current) – [Bereits bekannte Sachverhalte zu Listen und Strings] Olaf Schnürer |
|---|
| | ~~NOTOC~~ |
| | |
| | ====== Bereits bekannte Sachverhalte zu Listen und Strings ====== |
| | |
| | <WRAP center round info> |
| | === Definition von Listen durch aufzählende Schreibweise === |
| | * Eine Liste ist eine Datenstruktur, die eine geordnete endliche Folge von Elementen enthält. |
| | * In Python kann man Listen durch aufzählende Schreibweise definieren, z. B. erzeugt der Befehl ''meineListe = ["Anton", "Berta", "Caesar", "Dora", "Emil", "Friedrich", "Gustav"]'' eine Liste mit dem Namen ''meineListe''. |
| | * Die Anzahl der Elemente einer Liste erhält man mit der Funktion ''len''. Beispielsweise liefert ''len(meineListe)'' die Zahl ''7''. |
| | === Test, ob ein Element in einer Liste auftaucht === |
| | * Mit dem Schlüsselwort ''in'' kann man testen, ob ein Element in einer Liste auftaucht: |
| | * Beispielsweise liefert ''"Dora" in meineListe'' den booleschen Wert ''True''. |
| | * ''"Zeus" in meineListe'' oder ''42 in meineListe'' liefern beide den booleschen Wert ''False''. |
| | === Zugriff auf Listenelemente === |
| | * Auf die Einträge einer Liste kann man mit Hilfe der Syntax ''<Name der Liste>[<Index>]'' zugreifen; wir erklären dies am Beispiel der obigen Liste: |
| | * ''meineListe[0]'' liefert den nullten (in Informatik-Zählweise bzw. den ersten in normaler Zählweise) Eintrag der obigen Liste, also ''"Anton"''. |
| | * ''meineListe[2]'' liefert den zweiten Eintrag, also ''"Caesar"''. |
| | * ''meineListe[-1]'' liefert den letzten Eintrag, also ''"Gustav"''. |
| | * ''meineListe[-3]'' liefert den drittletzten Eintrag, also ''"Emil"''. |
| | === Extraktion von Teillisten === |
| | * Extraktion von Teillisten mit ''<Name der Liste>[<Startindex>:<Endindex>]'', wobei die Teilliste beim Startindex beginnt und eine Position vor dem Endindex endet, z. B.: |
| | * ''meineListe[1:4]'' liefert die Liste ''["Berta", "Caesar", "Dora"]'' |
| | * als Indizes sind ähnlich wie im vorigen Punkt auch negative Zahlen erlaubt: Die Befehle ''meineListe[1:-3]'' oder ''meineListe[-6:4]'' oder ''meineListe[-6:-3]'' liefern ebenso die Liste ''["Berta", "Caesar", "Dora"]''. |
| | * Bei der Extraktion von Teillisten dürfen Start- oder Endindex weggelassen werden. |
| | * Lässt man den Startindex weg, so wird er "per default" minimal sinnvoll (also auf ''0'') gesetzt. Beispielsweise liefert ''meineListe[:4]'' die Liste ''["Anton", "Berta", "Caesar", "Dora"]''. Dieselbe Liste erhält man mit ''meineListe[:-3]'' |
| | * Lässt man den Endindex weg, so wird er "per default" maximal sinnvoll (also auf die Länge der Liste) gesetzt. Beispielsweise liefern ''meineListe[4:]'' und ''meineListe[-3:]'' die Liste ''["Emil", "Friedrich", "Gustav"]''. |
| | |
| | Ausserdem sei bekannt, dass der Befehl ''meineListe[::-1]'' die umgekehrte Liste ''["Gustav", "Friedrich", "Emil", "Dora", "Caesar", "Berta", "Anton"]'' liefert.((Für diejenigen, die es genau wissen möchten oder sich vage erinnern: Mit Hilfe der Syntax ''<Name der Liste>[<Startindex>:<Endindex>:<Schrittweite>]'' kann man eine Schrittweite als zusätzlichen dritten Parameter übergeben: |
| | * ''meineListe[1:5:2]'' liefert die Liste ''["Berta", "Dora"]''. |
| | * ACHTUNG: Hierbei sind auch negative Schrittweiten erlaubt: ''meineListe[5:1:-1]'' liefert die Liste ''["Friedrich", "Emil", "Dora", "Caesar"]''. |
| | * Lässt man bei positiver Schrittweite Start- bzw. Endindex weg, so wird dieser (ähnlich wie oben) minimal bzw. maximal gesetzt: |
| | * ''meineListe[::2]'' liefert dasselbe wie ''meineListe[0:7:2]'', nämlich die aus jedem zweiten Element bestehende Teilliste, also ''["Anton", "Caesar", "Emil", "Gustav"]''. |
| | * ACHTUNG: Lässt man bei negativer Schrittweite Start- bzw. Endindex weg, so wird dieser maximal bzw. minimal (was hier ''-1'' bedeutet) gesetzt. Dies erklärt, dass ''meineListe[::-1]'' die umgekehrte Liste liefert. |
| | )) |
| | |
| | === Zu Strings alias Zeichenketten === |
| | |
| | * Bezeichnet ''s'' einen String in Python, so liefert ''s.lower()'' denjenigen String, in dem alle Großbuchstaben von ''s'' durch Kleinbuchstaben ersetzt wurden. |
| | * Beispiel: Für ''s = "Goethes Faust, Teil I"'' liefert ''s.lower()'' den String ''"goethes faust, teil i"''. |
| | * Ähnlich wie oben bei Listen kann man auf die einzelnen Zeichen eines Strings bzw. einen Teil des Strings zugreifen. |
| | * Für ''s'' wie oben liefert |
| | * ''s[8]'' das Zeichen (alias den String der Länge Eins) ''"F"'', |
| | * ''s[8:13]'' den String ''"Faust"'', |
| | * ''s[-6:]'' den String ''"Teil I"'', |
| | * ''s[::-1]'' den String ''"I lieT ,tsuaF sehteoG"''. |
| | * Die Funktion ''len'' liefert die Länge eines Strings, z. B. liefert ''len(s)'' im obigen Beispiel die Zahl ''21''. |
| | </WRAP> |
| | |
| | === Retour zur Hauptseite === |
| | |
| | [[lehrkraefte:snr:informatik:fachdidaktik:list-comprehension|Fortgeschrittene Techniken für Listen samt Aufgaben zu Goethes Faust]] |
| |