Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Range-Funktion | Loopar
Practice
Projects
Quizzes & Challenges
Frågesporter
Challenges
/
Introduktion till Python

bookRange-Funktion

Funktionen range() i Python är en inbyggd funktion som genererar en sekvens av tal.

Den används ofta för att iterera över en sekvens med loopar, särskilt när du behöver upprepa en loop ett visst antal gånger.

Detta är idealiskt för att hantera uppgifter som innebär ett förutsägbart repetitionsmönster, såsom påfyllning av hyllor eller schemaläggning av kampanjer i en livsmedelsbutik.

Så här använder Alex funktionen range() för att effektivt hantera rutinuppgifter i vårt butiksscenario:

Syntax och argument

Funktionen range() låter dig skapa en sekvens av tal för loopar. Du kan använda den med upp till tre argument:

range(start, stop, step)
  • start: talet där sekvensen börjar; standardvärde är 0 om du utelämnar det;
  • stop: talet där sekvensen slutar, men detta tal ingår inte;
  • step: hur mycket som räknas upp (eller ner) varje gång; standardvärde är 1 om du utelämnar det.

Du kan använda ett, två eller alla tre argument för att styra hur din loop räknar.

Ett enda argument

När funktionen range() ges ett enda argument behandlas detta som parametern stop.

I vårt exempel genererar den en sekvens av 7 element som börjar från 0 och slutar vid 6. Loopen itererar över dessa element, vilket representerar de första 7 dagarna som butiken är öppen.

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
Notering

Sekvensen börjar på 0 och slutar på 6. Detta sker eftersom Python ofta börjar räkna från 0, vilket minskar behovet av att justera indexering i många situationer.

Två argument

När två argument anges, som 25 (start) och 32 (stop), genererar range() en sekvens från 25 till 31 (eftersom stop-värdet utesluts från 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
Notera

Med denna metod för indexering, där slutvärdet exkluderas, kan du enkelt beräkna antalet element i sekvensen genom att subtrahera argumentet start från argumentet stop. Till exempel, 32 - 25 = 7, vilket innebär att det finns 7 element i sekvensen.

Tre argument

Genom att lägga till ett tredje argument till range() introduceras ett step-värde, vilket definierar steglängden mellan varje tal i sekvensen.

I detta exempel tar range() värdena 1 (start), 13 (stop) och 3 (step), vilket ger talen 1, 4, 7, 10. Dessa kan representera starttider för personalens arbetspass under en 12-timmars arbetsdag.

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

Exempel på tillämpning

Du kan använda funktionen range() för att iterera genom varje veckodag och tilldela en uppgift för den dagen. Detta hjälper till att organisera vad som behöver göras i matbutiken under hela veckan.

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 ovan genererar funktionen range() siffror från 0 till 6, vilket gör att loopen kan komma åt varje dag och dess motsvarande uppgift via index. Detta underlättar organiseringen av dagliga uppgifter i livsmedelsbutiken.

Uppgift

Swipe to start coding

Använd två listorweekdays och daily_promotions — för att skriva ut den kampanj som är tilldelad varje veckodag.

  • Använd en for-loop med funktionen range() för att iterera genom listornas index.
  • Vid varje iteration:
    • Hämta aktuell weekday från listan weekdays.
    • Hämta motsvarande kampanj från daily_promotions med samma index.
  • Skriv ut båda värdena i det angivna formatet.

Utskriftskrav

  • För varje dag, skriv ut:
    <weekday>: Promotion on <promotion>

Säkerställ att båda listorna har samma antal element för att undvika indexfel.

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 5
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

close

bookRange-Funktion

Svep för att visa menyn

Funktionen range() i Python är en inbyggd funktion som genererar en sekvens av tal.

Den används ofta för att iterera över en sekvens med loopar, särskilt när du behöver upprepa en loop ett visst antal gånger.

Detta är idealiskt för att hantera uppgifter som innebär ett förutsägbart repetitionsmönster, såsom påfyllning av hyllor eller schemaläggning av kampanjer i en livsmedelsbutik.

Så här använder Alex funktionen range() för att effektivt hantera rutinuppgifter i vårt butiksscenario:

Syntax och argument

Funktionen range() låter dig skapa en sekvens av tal för loopar. Du kan använda den med upp till tre argument:

range(start, stop, step)
  • start: talet där sekvensen börjar; standardvärde är 0 om du utelämnar det;
  • stop: talet där sekvensen slutar, men detta tal ingår inte;
  • step: hur mycket som räknas upp (eller ner) varje gång; standardvärde är 1 om du utelämnar det.

Du kan använda ett, två eller alla tre argument för att styra hur din loop räknar.

Ett enda argument

När funktionen range() ges ett enda argument behandlas detta som parametern stop.

I vårt exempel genererar den en sekvens av 7 element som börjar från 0 och slutar vid 6. Loopen itererar över dessa element, vilket representerar de första 7 dagarna som butiken är öppen.

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
Notering

Sekvensen börjar på 0 och slutar på 6. Detta sker eftersom Python ofta börjar räkna från 0, vilket minskar behovet av att justera indexering i många situationer.

Två argument

När två argument anges, som 25 (start) och 32 (stop), genererar range() en sekvens från 25 till 31 (eftersom stop-värdet utesluts från 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
Notera

Med denna metod för indexering, där slutvärdet exkluderas, kan du enkelt beräkna antalet element i sekvensen genom att subtrahera argumentet start från argumentet stop. Till exempel, 32 - 25 = 7, vilket innebär att det finns 7 element i sekvensen.

Tre argument

Genom att lägga till ett tredje argument till range() introduceras ett step-värde, vilket definierar steglängden mellan varje tal i sekvensen.

I detta exempel tar range() värdena 1 (start), 13 (stop) och 3 (step), vilket ger talen 1, 4, 7, 10. Dessa kan representera starttider för personalens arbetspass under en 12-timmars arbetsdag.

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

Exempel på tillämpning

Du kan använda funktionen range() för att iterera genom varje veckodag och tilldela en uppgift för den dagen. Detta hjälper till att organisera vad som behöver göras i matbutiken under hela veckan.

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 ovan genererar funktionen range() siffror från 0 till 6, vilket gör att loopen kan komma åt varje dag och dess motsvarande uppgift via index. Detta underlättar organiseringen av dagliga uppgifter i livsmedelsbutiken.

Uppgift

Swipe to start coding

Använd två listorweekdays och daily_promotions — för att skriva ut den kampanj som är tilldelad varje veckodag.

  • Använd en for-loop med funktionen range() för att iterera genom listornas index.
  • Vid varje iteration:
    • Hämta aktuell weekday från listan weekdays.
    • Hämta motsvarande kampanj från daily_promotions med samma index.
  • Skriv ut båda värdena i det angivna formatet.

Utskriftskrav

  • För varje dag, skriv ut:
    <weekday>: Promotion on <promotion>

Säkerställ att båda listorna har samma antal element för att undvika indexfel.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 5
single

single

some-alt