Øvingsforelesning 9 i Python (TDT4110)

Like dokumenter
Øvingsforelesning 7 i Python (TDT4110)

INF120: Oblig 3. Yngve Mardal Moe

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Unntak (exceptions) (Kap 6) Dictionaries (Kap. 9) Terje Rydland - IDI/NTNU

AlgDat - Øvingsforelesning 1 Introduksjon til Python, lenkede lister og øving 1

IN1140 Ekstraoppgaver uke 3

Øvingsforelesning 6 i Python (TDT4110)

TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak ( exceptions ) - 3rd edition: Kapittel 6. Professor Alf Inge Wang

Læringsmål og pensum. Inn- og utoperasjoner 21/10/16

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Filer og unntak (exceptions) Utgave 3: Kap. 6. Terje Rydland - IDI/NTNU

Python: Oppslagslister (dictionaries) og mengder 3. utgave: Kapittel 9

Python: Filer og unntak Gaddis: Kapittel 6

Øvingsforelesning i Python (TDT4110)

MENGDER (SETS) Læringsmål og pensum. Kapittel 9.2

TDT4110 Informasjonsteknologi grunnkurs: Tema: Dictionaries og mengder (sets) - Kapittel 9. Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Python: Repetisjon. Professor Alf Inge Wang

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Dictionaries og sets (mengder) Utgave 3: Kap. 9. Terje Rydland - IDI/NTNU

TDT4120 Øvingsforelesning 1 Introduksjon til Python

Håndtere mange verdier

Øvingsforelesning 3 Python (TDT4110)

Python: Filer og unntak Gaddis: Kapittel 6

Kondisjonstest. Algoritmer og datastrukturer. Python-oppgaver - LF. Onsdag 6. oktober Her er noen repetisjonsoppgaver i Python.

Øvingsforelesning i Python (TDT4110)

TDT4110 Informasjonsteknologi, grunnkurs

Kondisjonstest. Algoritmer og datastrukturer. Python-oppgaver. Onsdag 6. oktober Her er noen repetisjonsoppgaver i Python.

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum

TDT4110 Informasjonsteknologi grunnkurs: Tema: Mer om strenger. - 3rd edition: Kapittel 8. Professor Alf Inge Wang

Øvingsforelesning 5 Python (TDT4110)

PGZ - Hangman Ekspert Python Lærerveiledning

TDT4110 IT Grunnkurs Høst 2012

Informasjon Prøveeksamen i IN1000 høsten 2018

Dictionary er et objekt som lagrer en samling av data. Minner litt om lister men har klare forskjeller:

Dictionary er et objekt som lagrer en samling av data. Minner litt om lister men har klare forskjeller:

Filbehandling Tekstfiler

Øvingsforelesning 5 Python (TDT4110)

Øvingsforelesning 1 Python (TDT4110)

Mål. Pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Dictionaries og sets (mengder) Utgave 3: Kap. 9. Terje Rydland - IDI/NTNU

Binærfiler versus tekstfiler

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python

Løsningsforslag Kontinuasjonseksamen i TDT4110 Informasjonsteknologi - grunnkurs

TDT4110 Informasjonsteknologi grunnkurs: Uke 48 Oppsummering/Spørretime. Professor Alf Inge Wang

TDT4105 Informasjonsteknologi grunnkurs Øvingsforelesning 2. Iver Dihle Skjervum Vit.ass. ITGK

TDT4105 IT Grunnkurs Høst 2016

Løkker og lister. Løse problemer med programmering. INF1001, uke3 Geir Kjetil Sandve

Kryptering med vigenere-metoden

TDT4110 Informasjonsteknologi grunnkurs: Tema: Lister og tupler. - 3rd edition: Kapittel 7. Professor Alf Inge Wang

TDT4110 IT Grunnkurs Høst 2015

Python: Strenger 3. utgave: Kapittel 8

Repetisjon, del 1. TDT 4110 IT Grunnkurs Professor Guttorm Sindre

Repetisjon, del 2. TDT 4110 IT Grunnkurs Professor Guttorm Sindre

IN1140, H2018 gruppetime oppgaver Introduksjon til Tekst i Python

TDT4110 IT Grunnkurs Høst 2014

TDT4105 Informasjonsteknologi, grunnkurs

Python: Mengder og Dictionaries 3. utgave: Kapittel 9

I dag skal vi ved hjelp av ganske enkel Python-kode finne ut om det er mulig å tjene penger på å selge og kjøpe en aksje.

Post-it spørsmål fra timen (Arv og subklasser)

IN1140, H2018 gruppetime oppgaver Introduksjon til Tekst i Python

HØGSKOLEN I SØR-TRØNDELAG

Kryptering med Vigenère-metoden

TDT4110 IT Grunnkurs Høst 2014

TDT4110 Informasjonsteknologi grunnkurs: Tema: Mer om strenger Utgave 3: Kap. 8

Leksjon 7. Filer og unntak

TDT4110 IT Grunnkurs Høst 2012

Øvingsforelesning i Python (TDT4110)

Python: Mengder og Dictionaries 3. utgave: Kapittel 9

Programmering Høst 2017

TDT4110 IT Grunnkurs Høst 2016

Løse reelle problemer

TDT4110 Informasjonsteknologi grunnkurs: Eksempler. Mangekanter

TDT4105 Informasjonsteknologi grunnkurs Øvingsforelesning 4. Iver Dihle Skjervum Vit.ass. ITGK

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Hva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; }

TDT4110 IT Grunnkurs Høst 2014

TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose

Mattespill Nybegynner Python PDF

Oppsummering fra sist

JS: Grunnleggende JavaScript

Finne ut om en løsning er helt riktig og korrigere ved behov

Oppgaver uke 1: Løsningsforslag

Med løkke: Læringsmål og pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5. Mål.

Løse reelle problemer

TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker. - 3rd edition: Kapittel 4. Professor Alf Inge Wang

Hvor gammel er du? Hvor gammel er du? Del 1: Skrive ut til skjerm. Gjøre selv. Skrevet av: Sindre O. Rasmussen, Kodeklubben Trondheim

Finne ut om en løsning er helt riktig og korrigere ved behov

EKSAMENSOPPGAVE. Vil det bli gått oppklaringsrunde i eksamenslokalet? Svar: NEI

IN1000 Repetisjonskurs: IO og listeoperasjoner (+ string)

TDT4110 IT Grunnkurs Høst 2016

Først må vi få datamaskinen til å velge et tilfeldig ord, så la oss begynne. Lagre programmet ditt og kjør det. Hvilket ord skrives ut?

Hash-funksjoner. Introduksjon. Steg 1: Strekkoder. Eksempel. Skrevet av: Martin Strand

Innhold uke 9. Objektorientert programmering i Python. Om ukens pensum. Referanser og objekter Tema: Mer komplekse strukturer

Kanter, kanter, mange mangekanter. Introduksjon: Steg 1: Enkle firkanter. Sjekkliste. Skrevet av: Sigmund Hansen

Øvingsforelesning i Matlab TDT4105

TDT4105 Informasjonsteknologi, grunnkurs

JS: Grunnleggende JavaScript Nybegynner

Opphavsrett: Forfatter og Stiftelsen TISIP

TDT4127 Programmering og Numerikk

Etter uke 6 skal du. Introduksjon til objektorientert programmering. Hva skjedde ~1967? INF1001. Grunnkurs i objektorientert programmering

Høst Øving 5. 1 Teori. 2 Månedskalender. Norges teknisknaturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Læringsmål og pensum. Algoritmeeffektivitet

Transkript:

Øvingsforelesning 9 i Python (TDT4110) Dictionaries, Exception, Filhåndtering Vegard Hellem

Oversikt Praktisk Info Gjennomgang av Øving 7 Programmering til øving 9 2

Praktisk info Auditorieøving 2 Må ikke tas av de som gjorde den 1., men teller som en øving Er neste uke 3

Oversikt Praktisk Info Gjennomgang av Øving 7 Programmering til Øving 9 4

Oversikt Praktisk Info Gjennomgang av Øving 5 Programmering til Øving 7 5

Dictionaries Liste"med selvvalgte indekser Kan sette inn nye verdier Hente ut eksisterende Verdier kan ha alle typer variabler få tak i nøkler. dict.keys() få tak i alt dic.items() Legge til en annen - dict.update(dict2) Sjekke om en key er i dictionary if "a"in dict.keys() Kan iterere gjennom alle elementer dict = {} dict [" TDT4110 "] = "IT Grunnkurs " dict [" TDT4105 "] # KeyError " TDT4110 " in dict. keys () # true for key, value in dict. items (): #Key, er alle nø klene, # Value er alle verdiene 6

Filhåndtering Må lukke filen etter å ha lest, with-funksjonen gjør dette enklere Filoperasjoner, r", "w", "a" Det du ønsker å gjøre Lese inn filen For hver linje i filen Preprosesser (Fjern linjeskift etc) Legg det i en liste? linjer = [] with open (" fil. txt ", "r") as file : # Å pner filen med variabelen file for linje in file. readlines (): # Linje er n å hver linje i filen linje = linje. strip () # Fjerner " whitespace " p å starten og slutten linje = linje. split () # Splitter ved alle mellomrom i fila ( Hvis kun en verdi, per linje linjer. append ( linje ) # Matrise med alle verdiene 7

Oppgaver - Dictionaries Lag en dictionary: Prices, med nøklene banana-10, "apple- 5, grape- 15, orange=25 8

Oppgaver - Dictionaries Lag en dictionary: Prices, med nøklene banana-10, "apple- 5, grape- 15, orange=25 Lag en funksjon, som tar inn en dictionary, en nøkkel, og en verdi, og oppdaterer dictionarien med den nye verdien 8

Oppgaver - Dictionaries Lag en dictionary: Prices, med nøklene banana-10, "apple- 5, grape- 15, orange=25 Lag en funksjon, som tar inn en dictionary, en nøkkel, og en verdi, og oppdaterer dictionarien med den nye verdien Lag en funksjon som iterer gjennom dictionarien og printer ut hver nøkkel og verdi sammen med hverandre 8

Oppgaver - Dictionaries Lag en dictionary: Prices, med nøklene banana-10, "apple- 5, grape- 15, orange=25 Lag en funksjon, som tar inn en dictionary, en nøkkel, og en verdi, og oppdaterer dictionarien med den nye verdien Lag en funksjon som iterer gjennom dictionarien og printer ut hver nøkkel og verdi sammen med hverandre Skriv inn en funksjon, som tar inn en dictionary, og et tall - og returnerer alle nøklene i verdien, som du har råd til å kjøpe 8

Oppgaver - Dictionaries Lag en dictionary: Prices, med nøklene banana-10, "apple- 5, grape- 15, orange=25 Lag en funksjon, som tar inn en dictionary, en nøkkel, og en verdi, og oppdaterer dictionarien med den nye verdien Lag en funksjon som iterer gjennom dictionarien og printer ut hver nøkkel og verdi sammen med hverandre Skriv inn en funksjon, som tar inn en dictionary, og et tall - og returnerer alle nøklene i verdien, som du har råd til å kjøpe Lag en funksjon, som tar inn to dictionaries: En pris, og en "handlekurv- "apple": 2. For alle tingene du har i handlekurven, finn ut total pris på alle varene dine 8

Oppgaver - Dictionaries Lag en dictionary: Prices, med nøklene banana-10, "apple- 5, grape- 15, orange=25 Lag en funksjon, som tar inn en dictionary, en nøkkel, og en verdi, og oppdaterer dictionarien med den nye verdien Lag en funksjon som iterer gjennom dictionarien og printer ut hver nøkkel og verdi sammen med hverandre Skriv inn en funksjon, som tar inn en dictionary, og et tall - og returnerer alle nøklene i verdien, som du har råd til å kjøpe Lag en funksjon, som tar inn to dictionaries: En pris, og en "handlekurv- "apple": 2. For alle tingene du har i handlekurven, finn ut total pris på alle varene dine Utvid funksjonen til å også ta inn en lager dictionary, med antall varer på lager. Funksjonen skal sjekke om det er nok varer på lager, kjøpe så mange som du har sagt i handlekurven, og redusere varelageret med så mange du kjøper 8

Gjennomgang - Filhåndtering Skriv en funksjon som tar inn et filnavn og to tall, a og b. Programmet skal skrive til fil 100 tilfeldige tall mellom a b, med linjeskift mellom. Hint: file.write("\n") Skriv en funksjon som legger til 20 nye tilfeldige tall i en fil Skriv en funksjon som tar inn overnevnte fil, og putter alle tallene i en liste, og returnerer. Skriv en funksjon som finner det største tallet i en slik fil. Demo: Hva skjer hvis tallene er separert 5 og 5 tall på hver linje 9

Spørsmål Spørsmål kan også sendes på mail til vegahel@stud.ntnu.no 10