You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Oppgave 1 - Åpne og skrive til fil

Open-funksjonen i Python lager et fil-objekt og linker det til en fil på disken. Opprett en tekstfil kalt «test.txt» og lagre den i samme mappe som du jobber i. Du skal nå utføre en rekke operasjoner på denne filen:

  1. Åpne filen i  read only-modus. Lukk så filen.

  2. Åpne filen i write-modus og skriv fornavnet ditt i filen. Lukk så filen.

  3. Åpne filen i append-modus og legg til etternavnet ditt (med '\n' bak). Lukk så filen.

  4. Åpne filen og legg inn fornavn på fire venner. (Disse skal komme i tillegg til ditt eget navn.) Husk '\n' etter hvert navn. Lukk så filen.

Mulig tekstfil etter kjøring av kode:
Bob Bernt Bjornsdotter
Ola
Carina
Aragusta
Willy
 

Oppgave 2 - Lese data fra fil

I denne oppgaven skal du opprette et filobjekt i read only-modus og lese data fra filen. 

  1. Åpne filen og print alt innholdet i filen til skjerm. (Hint: du må opprette et fil-objekt og bruke funksjonen read() på objektet). Lukk filen.

  2. Åpne filen og print første linjen i filen til skjerm. (Hint: readline() funksjonen)

  3. Print andre linje i filen til skjerm. (Hint: readline() har en lese-posisjon. Mer info om readline() her.)

  4. Print den tredje og fjerde linjen til skjerm uten en blank linje i mellom. (Hint: rstrip()). Lukk filen.

Eksempel på kjøring:
#1
Bob Bernt Bjornsdotter
Ola
Carina
Aragusta
Willy

#2
Bob Bernt Bjornsdotter

#3
Ola

#4
Carina
Aragusta
 

Oppgave 3 - Skriving av numeriske data til fil

For å bruke write-funksjonen til å skrive tall til fil, må tallene konverteres til strenger. I denne oppgaven skal du skrive et lite program som tar inn to tall fra brukeren og lagrer summen i test.txt-filen. F.eks. skal '12' lagres til fil om input fra bruker er 4 og 8.

Oppgave 4 - Bruk av løkker til filhåndtering

Opprett en funksjon kalt «gaver()» som tar inn gaveønsker fra brukeren i 5 omganger ved bruk av en løkke og skriver disse til test-filen din. Etter å kjøre funksjonen skal test-filen bestå av tre linjer der hver linje består av et ønske (først linje kan foreksempel være «sykkel»). Husk å lukke filen før funksjonen avsluttes!

Oppgave 5 - Eksempler på exceptions

  1. Opprett en funksjon kalt «deling(tall1,tall2)» som returnerer tall1 delt på tall2. Kjør funksjonen med input tall1=1 og tall2=0 og observer hva som skrives til skjerm.
  2. Skriv så om programmet slik at det returnerer strengen «ulovlig input» dersom tall2 er 0.

Oppgave 6 - Try/except

Endre funksjonen fra oppgave 5. til å bruke try/except som hånderer ZeroDivisionError.

Oppgave 7 - Formasjonsteknologi grunnkurs

  1. Flygeskolen skal avholde sin årlige eksamen i Formasjonsteknologi grunnkurs. I den sammenheng er det viktig for de fagansvarlige – stuntlektor Due og professor Kråke - å melde inn hvilke studenter som skal få ta eksamen. I år har deler av øvingsopplegget vært obligatorisk.
    Det er totalt 12 øvinger i faget. Følgende regler gjelder for å få godkjent øvingsopplegg:
    • minst 5 av de 6 første øvingene må være godkjent (øvingene 1–6)
    • minst 4 av de 6 siste øvingene må være godkjent (øvingene 7–12)
    • minst én av øvingene 11 og 12 må være godkjent

    Skriv en funksjon, godkjent, som tar inn som parameter en tabell med 12 tall (1 eller 0). 1 betyr godkjent og 0 betyr ikke godkjent.

    Tabell 1 viser altså en student som har fått øvingene 1, 4, 5, 7, 8, 9 og 11 godkjent, hvilket ikke vil være tilstrekkelig for å få ta eksamen. Funksjonen skal returnere 1 hvis øvingsopplegget er godkjent og 0 hvis ikke, etter reglene beskrevet ovenfor.

  2. Skriv et lite program for å teste funksjonen godkjent ved å kalle på denne med tre ulike test-tabeller som du finner på selv. Programmet skal for de tre forsøkene skrive ut tabellenog resultatet av funksjonskallet på skjermen.

Oppgave 8 - Opprette dictionaries

Opprett et dictionary kalt «kokebok» og legg inn rettene «pasta carbonara», «sopp-risotto» og «pasta bolognese» som nøkler. Hver nøkkel har en tilhørende liste med ingredienser. Ingrediensene i pasta carbonara er fløte, pasta, bacon og egg, ingediensene i sopp-risotto er sopp, ris og fløte, og ingrediensene i pasta bolognese er pasta, kjøttdeig og tomatsaus.

Oppgave 9 - Hente, slette og legge til verdier fra en dictionary

  1. Skriv ut ingrediensene i «pasta carbonara»

  2. Legg til retten «kyllingsalat» med ingrediensene kylling, tomat, agurk og salat

  3. Skriv kode som sjekker om «sopp-risotto» finnes i kokeboken og skriver ut True dersom dette stemmer og False ellers

  4. Fjern «pasta bolognese» fra kokeboken

Oppgave 10 - Iterere over elementer i en dictionary

Skriv et program bestående av en for-løkke som skriver ut alle rettene som finnes i kokeboken og deres tilhørende ingredienser.

Oppgave 11 - Endre verdier i en dictionary

Legg til salt og pepper som ingredienser i alle rettene i kokeboken.

Oppgave 12 - Nyttige dictionaries metoder

Skriv ut alle rettene og sett av ingredienser som finnes i kokeboken. Fjern så alle elementene i kokeboken.

Oppgave 13 - Enkle sett-operasjoner

  1. Opprett et sett kalt «primtall» med primtallene under 10.

  2. Skriv ut lengden på settet.

  3. Legg til de neste to primtallene.

  4. Fjern det minste elementet i settet.

  5. Skriv et program som itererer over alle elementene i settet og skriver dem ut til skjerm.

Oppgave 14 - Union og snitt av sett

  1. Opprett et nytt sett kalt «oddetall» med alle oddetallene under 15

  2. Print snittet av settene ved å bruke intersection(set) funksjonen.

  3. Print unionen av settene ved å bruke union(set) funksjonen.

  4. Print forskjellene mellom settene ved å bruke difference(set) funksjonen.

  5. Bruk issubset(set) funksjonen til å sjekke om «primtall» er et subsett av «oddetall»

  • No labels