Python‐introduction‐to‐programming 3 - itnett/FTD02H-N GitHub Wiki

Forklaring av Python-koden:

Koden bruker en while-løkke til å skrive ut tall fra og med 100, og øker verdien av i med 20 for hver iterasjon helt til i overskrider 200. La oss gå gjennom hvert trinn for å forstå hva som skjer:

Kodeforklaring trinn for trinn:

  1. i = 100:

    • Variabelen i blir initialisert med verdien 100. Dette betyr at første gangen løkken starter, vil verdien av i være 100.
  2. while i <= 200::

    • Dette er en betinget løkke. Den vil kjøre så lenge betingelsen er sann, altså så lenge i er mindre enn eller lik 200. Hvis i overskrider 200, vil løkken stoppe.
  3. print(i):

    • Inne i løkken blir verdien av i skrevet ut i konsollen.
  4. i += 20:

    • Etter at verdien av i er skrevet ut, blir i økt med 20 (altså, vi legger 20 til den eksisterende verdien av i). Dette er en kortform for i = i + 20.

Hva skjer i løpet av koden:

  • Når koden starter, er i lik 100. Siden 100 er mindre enn eller lik 200, vil den gå inn i løkken.
  • Koden vil skrive ut verdien 100, deretter øker i til 120.
  • Løkken kjører på nytt, skriver ut 120, øker i til 140, og fortsetter slik til i når 220.
  • Når i blir 220, stopper løkken siden betingelsen i <= 200 ikke lenger er sann.

Output:

Denne løkken vil skrive ut følgende tall:

100
120
140
160
180
200

Python-kode:

i = 100
while i <= 200:
    print(i)
    i += 20

Hvordan fungerer det?

  • While-løkker i Python er nyttige når du ønsker å gjenta en oppgave flere ganger, men ikke vet nøyaktig hvor mange ganger løkken skal kjøre på forhånd.
  • I dette tilfellet fortsetter løkken helt til i blir større enn 200. Når løkken er ferdig, avsluttes programmet.

Oppsummering:

Koden bruker en while-løkke som kjører basert på en betingelse. Den skriver ut tall fra 100 til 200 i trinn på 20.

Her er en tabell som viser hvordan små endringer i koden kan gi ulike resultater. Vi starter med det opprinnelige skriptet og utforsker noen muligheter for modifikasjoner, samt hvilken effekt det har på utfallet.

Endring Forklaring Modifisert kode Forventet resultat
Original kode Starter på 100, øker med 20, stopper ved 200. i = 100
while i <= 200:
print(i)
i += 20
Skriv ut:
100
120
140
160
180
200
Endre startverdi Starter på 50 i stedet for 100. i = 50
while i <= 200:
print(i)
i += 20
Skriv ut:
50
70
90
110
130
150
170
190
Endre økningen per iterasjon Øker med 10 i stedet for 20. i = 100
while i <= 200:
print(i)
i += 10
Skriv ut:
100
110
120
130
140
150
160
170
180
190
200
Endre økningen til å telle nedover Øker med -20 for å telle ned. i = 200
while i >= 100:
print(i)
i -= 20
Skriv ut:
200
180
160
140
120
100
Endre betingelsen (endre stoppverdi) Kjører løkken helt til i > 150. i = 100
while i <= 150:
print(i)
i += 20
Skriv ut:
100
120
140
Endre print-funksjonen Legger til tekst i utskriften for å gjøre det tydeligere. i = 100
while i <= 200:
print(f"Verdi: {i}")
i += 20
Skriv ut:
Verdi: 100
Verdi: 120
Verdi: 140
Verdi: 160
Verdi: 180
Verdi: 200
Øke til større verdier Starter på 100 og øker med 50. i = 100
while i <= 500:
print(i)
i += 50
Skriv ut:
100
150
200
250
300
350
400
450
500
Legg til en betingelse inni løkken Stopper hvis i er 160. i = 100
while i <= 200:
if i == 160: break
print(i)
i += 20
Skriv ut:
100
120
140

Eksempler på endringer og deres konsekvenser:

  • Startverdi: Ved å endre startverdien (i = 50) starter vi fra en lavere verdi, og løkken teller opp fra 50 til 200.
  • Økning per iterasjon: Hvis vi øker med 10 i stedet for 20, får vi flere verdier mellom 100 og 200.
  • Nedtelling: Med en negativ økning (f.eks. i -= 20), teller vi nedover fra 200 til 100.
  • Stoppe tidligere: Ved å endre betingelsen til i <= 150, vil løkken stoppe før 200.
  • Print med tekst: Å legge til tekst i print-funksjonen gir mer kontekst til utskriften.
  • Legge til betingelser i løkken: For eksempel kan vi stoppe løkken hvis i når en viss verdi, ved å bruke if og break.

Denne tabellen gir et godt grunnlag for å se hvordan små modifikasjoner i koden kan gi helt forskjellige resultater.

Når vi bruker .capitalize()-metoden i Python, blir kun den første bokstaven i strengen gjort om til stor bokstav, og resten av strengen blir konvertert til små bokstaver. Dette skjer fordi .capitalize() er laget for å sikre at bare det første tegnet i en streng er en stor bokstav, mens alle andre tegn (hvis de er bokstaver) blir gjort til små bokstaver.

Hvis du ønsker å gjøre alle bokstavene til store bokstaver, må du bruke en annen metode, nemlig .upper().

Her er en tabell som viser forskjellige måter å manipulere bokstaver i strenger med .capitalize() og andre relevante strengefunksjoner:

Funksjon Beskrivelse Eksempel på kode Resultat
.capitalize() Gjør første bokstav i strengen til stor, og resten små. "i am learning Python".capitalize() "I am learning python"
.upper() Gjør alle bokstaver i strengen til store bokstaver. "i am learning Python".upper() "I AM LEARNING PYTHON"
.lower() Gjør alle bokstaver i strengen til små bokstaver. "i am learning Python".lower() "i am learning python"
.title() Gjør første bokstav i hvert ord til stor bokstav. "i am learning Python".title() "I Am Learning Python"
.swapcase() Bytter om mellom store og små bokstaver. "i am learning Python".swapcase() "I AM LEARNING pYTHON"

Forklaring:

  • .capitalize(): Kun første bokstav i strengen blir stor, resten blir små.
  • .upper(): Alle bokstaver blir gjort om til store bokstaver.
  • .lower(): Alle bokstaver blir gjort om til små bokstaver.
  • .title(): Første bokstav i hvert ord blir gjort om til stor bokstav, som ofte brukes for titler.
  • .swapcase(): Bytter om alle bokstaver – store bokstaver blir små, og små bokstaver blir store.

Eksempler:

  1. .capitalize()

    "hello world".capitalize()

    Resultat: "Hello world"

  2. .upper()

    "hello world".upper()

    Resultat: "HELLO WORLD"

  3. .lower()

    "HELLO WORLD".lower()

    Resultat: "hello world"

  4. .title()

    "hello world".title()

    Resultat: "Hello World"

  5. .swapcase()

    "Hello World".swapcase()

    Resultat: "hELLO wORLD"

Ved å bruke forskjellige metoder kan du manipulere strenger på ulike måter avhengig av hva du ønsker å oppnå.

I Python er det en forskjell mellom & og &&, og de brukes på ulike måter:

1. & (bitwise AND operator):

  • & brukes som en bitvis operator (bitwise operator) i Python, som opererer på hver enkelt bit i tall. Den brukes også til å finne mengdeinterseksjon (intersection) mellom sett (sets), slik som vi så i eksempelet du ga tidligere.
  • Brukes for bitvise operasjoner eller mengdeoperasjoner.

Eksempler:

# Mengdeinterseksjon
s1 = {1, 2, 3, 4, 5}
s2 = {4, 5, 6, 7}
print(s1 & s2)  # Output: {4, 5}

# Bitvis operasjon
a = 12  # Binary: 1100
b = 10  # Binary: 1010
print(a & b)  # Output: 8 (Binary: 1000)

2. && (logisk AND operator) - IKKE TILGJENGELIG i Python:

  • I språk som C, C++, Java og bash (Debian apt), brukes && som en logisk AND-operator. Den sjekker om begge uttrykkene på hver side er sanne, og hvis de er det, returnerer den True.
  • Men Python bruker ikke && for logiske operasjoner. Python bruker i stedet det engelske ordet and for logiske sammenligninger.

Eksempel på logisk AND i Python:

x = True
y = False

print(x and y)  # Output: False (begge må være sanne for å gi True)

Hvordan bruke logiske AND-operasjoner i Python:

I stedet for &&, bruker Python det engelske ordet and for å uttrykke logisk AND-operasjon.

Eksempel på logisk AND (ved å bruke and):

x = 5
y = 10

# Logisk AND, returnerer True bare hvis begge forholdene er sanne
if x < 10 and y > 5:
    print("Begge forholdene er sanne")  # Output: "Begge forholdene er sanne"

Sammendrag:

  • &: Bitwise AND-operator eller brukes til å finne mengdeinterseksjon (intersection) i Python.
  • &&: Finnes ikke i Python. I stedet brukes and for logiske operasjoner (logisk AND).

Debian && kommandoer: Når du bruker && i Debian for å kjede sammen kommandoer som:

sudo apt update && sudo apt upgrade

Dette betyr at den andre kommandoen (sudo apt upgrade) bare utføres hvis den første kommandoen (sudo apt update) er vellykket. Det er logisk AND i bash.

I Python kan du oppnå tilsvarende oppførsel ved å bruke logisk and i betingelser eller funksjonskall.

# Eksempel på Python-logikk:
if do_update() and do_upgrade():
    print("Begge operasjonene var vellykkede")
⚠️ **GitHub.com Fallback** ⚠️