ÖVNINGSUPPGIFT

Uppgift 1 Array: Skriv ut värden

Försök själv först. Ledtrådar och facit finns längre ner – helt utan inloggning.


Nyckelord: array, for-loop

Listor är ett sätt att samla flera värden. I den här uppgiften ska vi skriva ut värden från en lista.

A: Skriv ut alla värden ur en array

Utgå från följande lista och skapa ett program som skriver ut alla namn från listan.

names = ["Erik", "Stina", "Tom", "Gustav", "Amanda", "Elin", "Rebecca", "Hampus"]

B: Skriv ut alla värden ur en array baklänges

Testa nu att skriva ut alla värden från listan baklänges.

C: Skriv ut alla värden ur en array baklänges i en tabell

Skriv ut alla värden baklänges från tabellen i följande format:

1 Hampus
2 Rebecca
3 Elin
4 Amanda
5 Gustav
6 Tom
7 Stina
8 Erik

Notera att första raden börjar på 1.

A: Ledtråd

Syntaxen för att iterera igenom en array i Python ser ut såhär:

for val in arr:
    print(val)
B: Ledtråd

Man kan vända på en lista i Python med den inbyggda funktionen reversed().

C: Ledtråd

Använd den inbyggda funktionen enumerate() för att få både index och värdet från en lista.

for i, val in enumerate(arr):
    print(i, val)
Svar

Uppgift A

Man kan enkelt skriva ut alla värden från en lista i Python med en vanlig for-loop.

for name in names:
    print(name)

Uppgift B:

Med funktionen reversed() blir alla värden i en lista bak och fram.

for name in reversed(names):
    print(name)

Man hade även kunnat plocka ut varje värde från listan med hjälp av att räkna varje index baklänges.

for i in range(len(names)):
    print(names[len(names) - 1 - i])

Uppgift C:

Genom att kombinera funktionena reversed() och enumerate() så blir det enkelt att skriva ut alla värden baklänges från en lista:

for i, name in enumerate(reversed(names)):
    print(i + 1, name)

Notera i + 1 eftersom första indexet i en lista alltid börjar på 0 i Python.