120 likes | 287 Views
Föreläsning 3 Datalogi för E1 / 2D1343. Repetition List List operationer. Stränghantering For-slingor. Problem. Skriv ett program som frågar efter 5 namn och skriver ut alla inmatade namn fast i omvänd ordning
E N D
Föreläsning 3 Datalogi för E1 / 2D1343 Repetition List List operationer • Stränghantering • For-slingor
Problem • Skriv ett program som frågar efter 5 namn och skriver ut alla inmatade namn fast i omvänd ordning • Skriv ett program som ovanstående med skillnaden att programmet frågar användaren om hur många namn som ska matas in.
Lista En lista är en indexerade samling av element. t.ex: namnLista = [’Henrik’,’Linda’,’Viggo’] primtalLista = [2,3,5,7,9,11,13,17,19,21] blandat = [19,’oktober’,’datalogi’,’kul’] Vad menas med följande? a = blandat[0] b = blandat[1] c = namnLista[3]
range() Range är en inbyggd funktion som underlättar skapandet av listor av tal. Kan användas på följande sätt: • range(3) [0,1,2] • range(3,10) [3,4,5,6,7,8,9] • range(3, 10, 2) [3,5,7,9]
Funktioner och Operationer på listor minlista=[1,”hej”,4,7,”jag vill fortsätta sova”, 9.5] • Antal element i listan? • Lägg till ett element i listan • Ta bort ett element i listan • Få tillgång till ett element i listan • Delmängd av listan • Klona listan • Referera till listan • List medlemmar
For-sats For-sats är samma som en while-sats fast den är hård bunden till listor. Syntax: forev ariabelinen lista : Satser som man vill att exekveras lika många gånger som antal element i listan
Sträng En sträng är lista av tecken. Följande funktioner kan användas för strängar. Men man måste importera modulen string innan: from string import * find(), replace(), split(), join(), upper(), lower(), len()
find() • En funktion som returnerar index av en delsträng som skickas som parameter, exempel: from string import * namn = ”Kungliga tekniska högskolan” index = find(namn,”sko”) index får värdet 21 index =find(namn,”skotta”) index får värdet -1
replace() • replace(s,a,b) returnerar en ny sträng ,där alla delsträngar som a byts mot b: from string import * namn = ”Nadadata” replace(namn,”da”,”di”) ”Nadidita” kommer att returneras
split() • Split() returnerar en lista med delsträngar från strängen som split anropas ifrån,exempel: from string import * namn = ”Nada Bada Data” split(namn) [’Nada’,’Bada’, ’Data’] kommer att returneras split(namn,”da”) [’Na’,’ Ba’, ’ta’] kommer att returneras
join() • join(L1) returnerar en sträng av alla element i listan L1 som skickas som in-parameter, obs L1 måste vara en lista med endast strängelement i , exempel: from string import * join(”Nada”,”Bada”) ’Nada Bada’ kommer att returneras
len(), upper(), lower() • len() returnerar antal tecken som finns i en sträng. • lower() returnerar en ny sträng med alla bokstäver fast stora bokstäver omvandlat till små. • upper() returnerar en ny sträng med alla bokstäver fast stora bokstäver omvandlat till små.