PCEP Python‐opplæring for nybegynnere19 - itnett/FTD02H-N GitHub Wiki

Selvfølgelig! Jeg kan sette sammen en MOOC (Massive Open Online Course) for de resterende temaene som dekker PCEP-sertifisering i en strukturert og pedagogisk måte. Målet er å gi en komplett og godt forklart guide som lærer deg alt du trenger å vite for å bestå PCEP. Kursinnholdet vil være organisert i moduler, med emner som er lette å følge, og med oppgaver, quizer, eksempler og forklaringer underveis.


MOOC for PCEP: Python Essentials

Kursstruktur

  • Nivå: Nybegynner
  • Forkunnskaper: Ingen forkunnskaper er nødvendig, kurset starter fra det mest grunnleggende.
  • Varighet: Fleksibel læringsplan. Kan følges i eget tempo.
  • Mål: Forberede deltakere til å bestå PCEP-30-02 (Certified Entry-Level Python Programmer) eksamenen.

Modul 1: Grunnleggende Python og Syntaks 🐍

Leksjon 1.1: Hva er Python?

  • Introduksjon: Hva er Python? Hvorfor bruke Python?
  • Oppgave: Installer Python, kjør din første Python-kode: print("Hello, World!").

Leksjon 1.2: Variabler og Datatyper 💡

  • Teori: Hva er variabler, og hvordan defineres de? Datatyper (int, float, str, bool).

  • Eksempel:

    a = 10
    b = 3.14
    c = "Python"
    d = True
    
  • Oppgaver:

    1. Definer variabler for navn, alder og vekt.
    2. Skriv ut variabler i én setning ved bruk av f-strenger.
  • Quiz:

    • Hva er forskjellen på int og float?
    • Hva returnerer type(3.14)?

Modul 2: Kontrollstrukturer og Løkker 🔄

Leksjon 2.1: If-else og Betingelser 📝

  • Teori: Hvordan bruke if, elif, og else for å kontrollere flyten i programmet basert på betingelser.

  • Eksempel:

    alder = 18
    if alder >= 18:
        print("Du er voksen")
    else:
        print("Du er ikke voksen")
    
  • Oppgaver:

    1. Skriv et program som sjekker om et tall er positivt, negativt eller null.
  • Quiz:

    • Hva er forskjellen på if og elif?
    • Hvordan skriver du en if-setning som sjekker om et tall er oddetall?

Leksjon 2.2: For-løkker 🔄

  • Teori: Hvordan iterere over lister, strenger, og range()-funksjonen.

  • Eksempel:

    for i in range(5):
        print(i)
    
  • Oppgaver:

    1. Lag et program som skriver ut alle tall fra 1 til 10.
  • Quiz:

    • Hva returnerer range(3)?
    • Hvordan skrive en for-løkke som går gjennom en liste?

Leksjon 2.3: While-løkker 🔁

  • Teori: Hva er while-løkker, og når bruker vi dem?

  • Eksempel:

    i = 0
    while i < 5:
        print(i)
        i += 1
    
  • Oppgaver:

    1. Lag et program som teller ned fra 10 til 1.
  • Quiz:

    • Hva er forskjellen på en for-løkke og en while-løkke?
    • Hva skjer hvis du glemmer å oppdatere telleren i en while-løkke?

Modul 3: Datastrukturer: Lister, Tupler, og Dictionaries 📊

Leksjon 3.1: Lister 📋

  • Teori: Lister som samlinger av elementer. Hvordan legge til, fjerne og iterere over lister.

  • Eksempel:

    frukt = ["eple", "banan", "appelsin"]
    frukt.append("druer")
    print(frukt)
    
  • Oppgaver:

    1. Lag en liste over favorittbøker. Skriv ut dem en etter en.
  • Quiz:

    • Hva er forskjellen på append() og extend()?
    • Hvordan fjerne et element fra en liste?

Leksjon 3.2: Tupler 🔗

  • Teori: Hva er tupler, og hva skiller dem fra lister? Hvorfor bruke immutables?

  • Eksempel:

    tuple = (1, 2, 3)
    
  • Oppgaver:

    1. Lag en tuple med navnene på ukedagene.
  • Quiz:

    • Hvordan opprette en tuple med ett element?
    • Kan du endre elementer i en tuple?

Leksjon 3.3: Dictionaries 🔑

  • Teori: Dictionaries som samlinger av nøkkel-verdi-par. Hvordan aksessere, legge til, og endre verdier.

  • Eksempel:

    student = {"navn": "Alice", "alder": 23}
    student["alder"] = 24
    print(student)
    
  • Oppgaver:

    1. Lag en dictionary med detaljer om en bil (merke, modell, årgang).
  • Quiz:

    • Hva er en nøkkel i en dictionary?
    • Hvordan iterere gjennom nøkkel-verdi-par i en dictionary?

Modul 4: Funksjoner og Feilhåndtering 🛠️

Leksjon 4.1: Funksjonsdefinisjoner og Parametre 🔧

  • Teori: Hvordan definere funksjoner, sende parametre, og returnere verdier.

  • Eksempel:

    def legg_til(a, b):
        return a + b
    print(legg_til(3, 4))
    
  • Oppgaver:

    1. Lag en funksjon som sjekker om et tall er et primtall.
  • Quiz:

    • Hva er forskjellen på en funksjon med og uten parametre?
    • Hvordan returnere flere verdier fra en funksjon?

Leksjon 4.2: Try-except for Feilhåndtering ⚠️

  • Teori: Hvordan bruke try-except-blokker for å fange og håndtere feil.

  • Eksempel:

    try:
        x = int(input("Skriv et tall: "))
    except ValueError:
        print("Ugyldig input!")
    
  • Oppgaver:

    1. Lag et program som leser et tall fra brukeren og håndterer feil hvis input er ugyldig.
  • Quiz:

    • Hva er hensikten med en try-blokk?
    • Når bruker du except og finally?

Modul 5: Avanserte emner for PCEP 💡

Leksjon 5.1: Lambda-funksjoner 📝

  • Teori: Bruk av anonyme funksjoner med lambda.

  • Eksempel:

    kvadrat = lambda x: x ** 2
    print(kvadrat(4))
    
  • Oppgaver:

    1. Lag en lambda-funksjon som returnerer summen av to tall.
  • Quiz:

    • Når bruker du en lambda-funksjon?
    • Hvordan skiller lambda seg fra vanlige funksjoner?

Leksjon 5.2: List Comprehension 📋

  • Teori: Kortsyntaks for å lage lister fra eksisterende iterable objekter.

  • Eksempel:

    tall = [x for x in range(10) if x % 2 == 0]
    print(tall)
    
  • Oppgaver:

    1. Lag en liste over kvadrattallene til alle tall fra 1 til 10.
  • Quiz:

    • Hva er list comprehension?
    • Hvordan bruke betingelser i list comprehension?

Modul 6: Filhåndtering 📁

Leksjon 6.1: Åpne, lese og skrive til filer 📂

  • Teori: Hvordan bruke open() for å lese fra og skrive til filer.
  • **Eksempel

**:

with open("fil.txt", "w") as fil:
    fil.write("Hei, verden!")
  • Oppgaver:

    1. Lag et program som leser innholdet fra en fil og skriver ut det i konsollen.
  • Quiz:

    • Hva er forskjellen på r og w i filåpning?
    • Hvorfor bruke with for filhåndtering?

Dette kursoppsettet gir en fullstendig guide til PCEP-emner, hvor hver modul dekker både det teoretiske grunnlaget og praktiske øvelser. Hver leksjon har quiz og oppgaver, noe som gir deltakerne muligheten til å teste kunnskapen sin før de går videre til neste emne. Hvis du ønsker flere oppgaver, tilpasninger, eller andre justeringer, gi meg beskjed! 😊