Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Range-funksjonen | Løkker
Practice
Projects
Quizzes & Challenges
Quizer
Challenges
/
Introduksjon til Python

bookRange-funksjonen

Funksjonen range() i Python er en innebygd funksjon som genererer en sekvens av tall.

Den brukes ofte for å iterere over en sekvens med løkker, spesielt når det er behov for å utføre en løkke et bestemt antall ganger.

Dette er ideelt for oppgaver som innebærer et forutsigbart repetisjonsmønster, som å fylle opp hyller eller planlegge salg i en dagligvarebutikk.

La oss se hvordan Alex bruker range()-funksjonen for å håndtere rutineoppgaver effektivt i vårt dagligvarebutikk-scenario:

Syntaks og argumenter

Funksjonen range() lar deg lage en tallsekvens for bruk i løkker. Du kan bruke den med opptil tre argumenter:

range(start, stop, step)
  • start: tallet sekvensen starter på; standardverdi er 0 hvis det utelates;
  • stop: tallet sekvensen slutter på, men dette tallet er ikke inkludert;
  • step: hvor mye det telles opp (eller ned) hver gang; standardverdi er 1 hvis det utelates.

Du kan bruke ett, to eller alle tre argumentene for å kontrollere hvordan løkken teller.

Ett enkelt argument

Når funksjonen range() får ett enkelt argument, tolkes dette som stop-parameteren.

I vårt eksempel genererer den en sekvens med 7 elementer som starter på 0 og slutter på 6. Løkken itererer over disse elementene, som representerer de første 7 dagene butikken er åpen.

123
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
copy
Note
Merk

Sekvensen starter på 0 og slutter på 6. Dette skjer fordi Python ofte starter å telle fra 0, noe som reduserer behovet for å justere indeksering i mange situasjoner.

To argumenter

Når to argumenter oppgis, som 25 (start) og 32 (stop), genererer range() en sekvens fra 25 til 31 (siden stop-verdien utelates fra sekvensen).

123
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
copy
Note
Merk

Med denne metoden for indeksering, der sluttelementet er ekskludert, kan du enkelt beregne antall elementer i sekvensen ved å trekke start-argumentet fra stop-argumentet. For eksempel, 32 - 25 = 7, noe som betyr at det er 7 elementer i sekvensen.

Tre argumenter

Ved å legge til et tredje argument til range(), introduseres en step-verdi, som definerer økningen mellom hvert tall i sekvensen.

I dette eksempelet tar range() 1 (start), 13 (stop) og 3 (step), og produserer tallene 1, 4, 7, 10. Disse kan representere starttidspunktene for ansatte sine skift i løpet av en 12-timers arbeidsdag.

123
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
copy

Eksempel på bruk

Du kan bruke range()-funksjonen til å iterere gjennom hver dag i uken og tildele en oppgave for den dagen. Dette bidrar til å organisere hva som må gjøres i dagligvarebutikken gjennom hele uken.

12345678910111213141516171819
# List of simple daily tasks for a week tasks = [ "Fruits", "Dairy", "Meat", "Veggies", "Bakery", "Displays", "Sales Report" ] # List of weekdays for each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Print the task for each weekday for day in range(7): print(f"{weekdays[day]}: {tasks[day]}")
copy

I koden ovenfor genererer funksjonen range() tall fra 0 til 6, slik at løkken kan få tilgang til hver dag og tilhørende oppgave ved hjelp av indeks. Dette gjør det enkelt å organisere daglige oppgaver i dagligvarebutikken.

Oppgave

Swipe to start coding

Bruk to listerweekdays og daily_promotions — for å skrive ut kampanjen som er tildelt hver ukedag.

  • Bruk en for-løkke med range()-funksjonen for å iterere gjennom listeindeksene.
  • I hver iterasjon:
    • Hent gjeldende weekday fra weekdays-listen.
    • Hent tilsvarende kampanje fra daily_promotions ved å bruke samme indeks.
  • Skriv ut begge verdiene i det angitte formatet.

Krav til utdata

  • For hver dag, skriv ut:
    <weekday>: Promotion on <promotion>

Sørg for at begge listene har like mange elementer for å unngå indeksfeil.

Løsning

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 5. Kapittel 5
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

close

bookRange-funksjonen

Sveip for å vise menyen

Funksjonen range() i Python er en innebygd funksjon som genererer en sekvens av tall.

Den brukes ofte for å iterere over en sekvens med løkker, spesielt når det er behov for å utføre en løkke et bestemt antall ganger.

Dette er ideelt for oppgaver som innebærer et forutsigbart repetisjonsmønster, som å fylle opp hyller eller planlegge salg i en dagligvarebutikk.

La oss se hvordan Alex bruker range()-funksjonen for å håndtere rutineoppgaver effektivt i vårt dagligvarebutikk-scenario:

Syntaks og argumenter

Funksjonen range() lar deg lage en tallsekvens for bruk i løkker. Du kan bruke den med opptil tre argumenter:

range(start, stop, step)
  • start: tallet sekvensen starter på; standardverdi er 0 hvis det utelates;
  • stop: tallet sekvensen slutter på, men dette tallet er ikke inkludert;
  • step: hvor mye det telles opp (eller ned) hver gang; standardverdi er 1 hvis det utelates.

Du kan bruke ett, to eller alle tre argumentene for å kontrollere hvordan løkken teller.

Ett enkelt argument

Når funksjonen range() får ett enkelt argument, tolkes dette som stop-parameteren.

I vårt eksempel genererer den en sekvens med 7 elementer som starter på 0 og slutter på 6. Løkken itererer over disse elementene, som representerer de første 7 dagene butikken er åpen.

123
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
copy
Note
Merk

Sekvensen starter på 0 og slutter på 6. Dette skjer fordi Python ofte starter å telle fra 0, noe som reduserer behovet for å justere indeksering i mange situasjoner.

To argumenter

Når to argumenter oppgis, som 25 (start) og 32 (stop), genererer range() en sekvens fra 25 til 31 (siden stop-verdien utelates fra sekvensen).

123
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
copy
Note
Merk

Med denne metoden for indeksering, der sluttelementet er ekskludert, kan du enkelt beregne antall elementer i sekvensen ved å trekke start-argumentet fra stop-argumentet. For eksempel, 32 - 25 = 7, noe som betyr at det er 7 elementer i sekvensen.

Tre argumenter

Ved å legge til et tredje argument til range(), introduseres en step-verdi, som definerer økningen mellom hvert tall i sekvensen.

I dette eksempelet tar range() 1 (start), 13 (stop) og 3 (step), og produserer tallene 1, 4, 7, 10. Disse kan representere starttidspunktene for ansatte sine skift i løpet av en 12-timers arbeidsdag.

123
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
copy

Eksempel på bruk

Du kan bruke range()-funksjonen til å iterere gjennom hver dag i uken og tildele en oppgave for den dagen. Dette bidrar til å organisere hva som må gjøres i dagligvarebutikken gjennom hele uken.

12345678910111213141516171819
# List of simple daily tasks for a week tasks = [ "Fruits", "Dairy", "Meat", "Veggies", "Bakery", "Displays", "Sales Report" ] # List of weekdays for each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Print the task for each weekday for day in range(7): print(f"{weekdays[day]}: {tasks[day]}")
copy

I koden ovenfor genererer funksjonen range() tall fra 0 til 6, slik at løkken kan få tilgang til hver dag og tilhørende oppgave ved hjelp av indeks. Dette gjør det enkelt å organisere daglige oppgaver i dagligvarebutikken.

Oppgave

Swipe to start coding

Bruk to listerweekdays og daily_promotions — for å skrive ut kampanjen som er tildelt hver ukedag.

  • Bruk en for-løkke med range()-funksjonen for å iterere gjennom listeindeksene.
  • I hver iterasjon:
    • Hent gjeldende weekday fra weekdays-listen.
    • Hent tilsvarende kampanje fra daily_promotions ved å bruke samme indeks.
  • Skriv ut begge verdiene i det angitte formatet.

Krav til utdata

  • For hver dag, skriv ut:
    <weekday>: Promotion on <promotion>

Sørg for at begge listene har like mange elementer for å unngå indeksfeil.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 5. Kapittel 5
single

single

some-alt