HT15, DA354A - Listor och lexikon
-
Upload
anton-tibblin -
Category
Education
-
view
488 -
download
2
Transcript of HT15, DA354A - Listor och lexikon
Introduktion till programmeringListor och lexikon
Dagens föreläsning• Vad består ett program av• … och hur lagrar vi data?• Listor• Lagring i sekvenser• … i form av strängar• … i form av värdesekvenser• Lexikon…• Lagring genom nyckel/värde-principen
Frågor innan vi börjar?
Vad gör ett program egentligen?
InputOutput
BeräkningarKonditional exekveringRepetition
Från användareTill användareBeräkningarIf-satserIterationer
Spara data när programmet körs?
Sekvenser
Sekvenser
En sekvens är ett objekt som innehåller flera värden, som lagras en
efter den andra. Du kan utföra operationer på en sekvens, för att
undersöka och manipulera de värden som lagrats i sekvensen.
Strängar, listor, (tupler)Olika typer av sekvenser
Strängar som sekvenser – med index
Metoder för strängar - test
Metoder för strängar - modifieringar
SträngformateringBonus!
För de nyfikna ”Gammal” syntax för strängformatering: http://www.diveintopython.net/native_data_types/formatting_strings.html
”Ny” syntax för strängformatering: https://docs.python.org/2/library/string.html#format-examples
Exempel på strängar
Listor i Python• Hittills har vi bara sparat ett värde i varje variabel, t.ex.
dice_1 = 5dice_2 = 3dice_3 = 6
• Vi skulle istället kunna spara dessa som en lista:dices = [5, 3, 6]
• På detta sätt kan vi enkelt spara flera värden på samma plats
Listor…• En lista är en datatyp som kan innehålla flera värden• Listor är förändringsbara, vilket gör att vi kan modifiera dem under ett
programs körning• Tupler är inte detta• Listor är en dynamisk datastruktur, vilket gör att vi kan:• Lägga till värden• Modifiera värden• Ta bort värden• Man kan använda:• Indexering• ”slicing”• + mång fler metoder när man arbetar med listor
Uppdelning (slicing) av listor
Måndag Tisdag Onsdag Torsdag Fredag Lördag Söndag0 1 2 3 4 5 6-7 -6 -5 -4 -3 -2 -1
Lägga ihop listor (konkatenering)
In <sekvens>• Vi kan kontrollera om ett värde finns i en lista genom in
Funktioner för listor
Lägga till saker i en lista
Skriva ut saker från listor• Nu blir for-loopen väldigt händig! =)
En lista på böcker
Lexikon• Vi använder lexikon för att strukturer upp våra värden genom
nycklar• Ett tydligt exempel på detta är en klassisk kontaktlista:
Demo på lexikon
VG?På kommande inlämningsuppgifter
… på fredag…