Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Indlejrede Løkker | Løkker
Introduktion til Python

bookIndlejrede Løkker

Indlejrede løkker udvider funktionaliteten af simple løkker ved at muliggøre gentagne handlinger på tværs af flere dimensioner. Dette er afgørende for at håndtere mere komplekse opgaver i et supermarkedsmiljø, såsom organisering af flere lag af lagerdata eller koordinering af tidsplaner på tværs af forskellige afdelinger.

Se med, når Alex demonstrerer, hvordan indlejrede løkker kan anvendes til at øge effektiviteten og håndtere komplekse scenarier i vores supermarked:

Her er den grundlæggende struktur for en indlejret for-løkke i Python:

for outer_var in outer_sequence:
    for inner_var in inner_sequence:
        # Code to run for each combination

Dette betyder, at for hver værdi i den ydre sekvens, vil den indre løkke gennemløbe hele sin sekvens.

Indlejrede løkker er ekstremt nyttige i programmering, når der er behov for at gennemløbe flere sekvenser samtidigt. Ved at placere én løkke inden i en anden, kan du iterere over elementer i to eller flere dimensioner, såsom en liste af lister:

123456789
# Simple list of lists: each sublist is a department items = [ ["Apple", "Banana"], # Fruits ["Milk", "Cheese"] # Dairy ] for department in items: for item in department: print(item)
copy

Den ydre løkke gennemløber hver underliste i department_stocks, hvor hver underliste repræsenterer en afdeling. Den indre løkke udskriver hvert element i den aktuelle underliste. Den ydre løkke går først videre til næste afdeling, når alle elementer i den nuværende underliste er blevet udskrevet.

Hvad hvis du ikke brugte en indlejret løkke

Hvis du forsøger at udskrive hvert element i en liste af lister uden at bruge en indlejret løkke, risikerer du at udskrive selve underlisterne i stedet for elementerne i dem. Her er, hvordan koden ville se ud med kun én løkke:

items = [
    ["Apple", "Banana"],  # Fruits
    ["Milk", "Cheese"]    # Dairy
]

for department in items:
    print(department)

Denne kode udskriver:

['Apple', 'Banana']
['Milk', 'Cheese']

I stedet for at udskrive hvert dagligvareelement får du hele underlisten (afdelingen) som én linje.

Note
Bemærk

Uden en indlejret løkke kan du ikke få direkte adgang til hvert element inde i de indre lister. Indlejrede løkker er nødvendige, når du skal arbejde med elementer i flere lag af en datastruktur.

123456789
# List of lists representing grocery sections items = [ ["Apple", "Banana"], # Fruits ["Milk", "Cheese"] # Dairy ] # Non-nested loop: prints each sublist as a whole for section in items: print(section)
copy
Opgave

Swipe to start coding

Du har to lister med dagligvarer: produce og dairy.

Først skal du kombinere disse to lister i én liste kaldet groceries. Hver liste (produce og dairy) skal være et element i groceries.

Brug derefter indlejrede for-løkker til at udskrive alle varenavne:

  • Den yderste løkke gennemgår hver liste i groceries (kald den section).
  • Den inderste løkke gennemgår hvert element i den pågældende liste.
  • Udskriv hvert element på en ny linje i dette format: Item name: <item>

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 5. Kapitel 8
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

bookIndlejrede Løkker

Stryg for at vise menuen

Indlejrede løkker udvider funktionaliteten af simple løkker ved at muliggøre gentagne handlinger på tværs af flere dimensioner. Dette er afgørende for at håndtere mere komplekse opgaver i et supermarkedsmiljø, såsom organisering af flere lag af lagerdata eller koordinering af tidsplaner på tværs af forskellige afdelinger.

Se med, når Alex demonstrerer, hvordan indlejrede løkker kan anvendes til at øge effektiviteten og håndtere komplekse scenarier i vores supermarked:

Her er den grundlæggende struktur for en indlejret for-løkke i Python:

for outer_var in outer_sequence:
    for inner_var in inner_sequence:
        # Code to run for each combination

Dette betyder, at for hver værdi i den ydre sekvens, vil den indre løkke gennemløbe hele sin sekvens.

Indlejrede løkker er ekstremt nyttige i programmering, når der er behov for at gennemløbe flere sekvenser samtidigt. Ved at placere én løkke inden i en anden, kan du iterere over elementer i to eller flere dimensioner, såsom en liste af lister:

123456789
# Simple list of lists: each sublist is a department items = [ ["Apple", "Banana"], # Fruits ["Milk", "Cheese"] # Dairy ] for department in items: for item in department: print(item)
copy

Den ydre løkke gennemløber hver underliste i department_stocks, hvor hver underliste repræsenterer en afdeling. Den indre løkke udskriver hvert element i den aktuelle underliste. Den ydre løkke går først videre til næste afdeling, når alle elementer i den nuværende underliste er blevet udskrevet.

Hvad hvis du ikke brugte en indlejret løkke

Hvis du forsøger at udskrive hvert element i en liste af lister uden at bruge en indlejret løkke, risikerer du at udskrive selve underlisterne i stedet for elementerne i dem. Her er, hvordan koden ville se ud med kun én løkke:

items = [
    ["Apple", "Banana"],  # Fruits
    ["Milk", "Cheese"]    # Dairy
]

for department in items:
    print(department)

Denne kode udskriver:

['Apple', 'Banana']
['Milk', 'Cheese']

I stedet for at udskrive hvert dagligvareelement får du hele underlisten (afdelingen) som én linje.

Note
Bemærk

Uden en indlejret løkke kan du ikke få direkte adgang til hvert element inde i de indre lister. Indlejrede løkker er nødvendige, når du skal arbejde med elementer i flere lag af en datastruktur.

123456789
# List of lists representing grocery sections items = [ ["Apple", "Banana"], # Fruits ["Milk", "Cheese"] # Dairy ] # Non-nested loop: prints each sublist as a whole for section in items: print(section)
copy
Opgave

Swipe to start coding

Du har to lister med dagligvarer: produce og dairy.

Først skal du kombinere disse to lister i én liste kaldet groceries. Hver liste (produce og dairy) skal være et element i groceries.

Brug derefter indlejrede for-løkker til at udskrive alle varenavne:

  • Den yderste løkke gennemgår hver liste i groceries (kald den section).
  • Den inderste løkke gennemgår hvert element i den pågældende liste.
  • Udskriv hvert element på en ny linje i dette format: Item name: <item>

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 5. Kapitel 8
single

single

some-alt