Kursen python (v5)
Kursen Programmering och Problemlösning i Python, a.k.a. python, lär ut grunderna i strukturerad programmering och problemlösning med programmeringsspråket Python.
Detta är en grundkurs i programmering vilket innebär att vi startar med att skapa rutiner för problemlösning och felsökning via enkla grundkonstruktioner i Python. Vi bygger en utvecklingsmiljö som hjälper oss med utveckling och felsökning. Stegvis bygger vi mer och mer avancerade konstruktioner i Python.
I praktiska övningar får du möjlighet att lära dig grunderna i strukturerad programmering och problemlösning samt använda Pythons inbyggda standardbibliotek med bland annat filhantering och datastrukturer.
Programmeringsspråket Python är ett högnivåspråk med stöd för olika programmeringsparadigmer som objektorientering och funktionell programmering. Du använder Python för att bekanta dig med dessa olika sätt att skriva din kod. Du får pröva på att använda Pythons inbyggda standardbibliotek med funktioner för stränghantering, filhantering och datastrukturer.
Via litteraturstudier och praktiska övningar får du möjlighet att via programmeringsspråket Python, lära dig grunderna i strukturerad programmering och problemlösning. I slutet av kursen får du visa dina färdigheter i en praktisk individuell examination.
#Kursintro
Här är en video som “pratar” dig igenom kursens upplägg och delar av innehållet i detta dokumentet.
#Förkunskaper
Det formella förkunskapskravet är:
Grundläggande behörighet.
#Innehåll
Kursen omfattar följande områden:
- Allmän problemlösning och strukturerad programmering.
- Grundläggande programmering i Python med variabler, villkorssatser, loopar, funktioner, argument.
- Felhantering, felkoder och tekniker att felsöka sitt program.
- Översikt av Pythons standardbibliotek och användande av datastrukturer och algoritmer och filhantering.
- Utvecklingsmiljö och verktyg för programvaruutveckling med Python.
#Mål
#Kunskap och förståelse
Efter genomförd kurs skall studenten:
Påvisa grundläggande kunskaper i problemlösning med strukturerad programmering i Python genom att skriftligen beskriva och sammanfatta erfarenheter och observationer från övningar och uppgifter.
Påvisa grundläggande kunskaper i att lösa definierade problem via programmering i Python
#Färdighet och förmåga
Efter genomförd kurs skall studenten:
utifrån en specifikation kunna utveckla en lösning i Python samt dokumentera och via text kunna presentera denna lösning.
ha god praktisk förmåga att hantera de verktyg och utvecklingsmiljöer som används vid utveckling och felsökningar med Python.
#Värderingsförmåga och förhållningssätt
Efter genomförd kurs skall studenten:
Självständigt och kritiskt kunna utvärdera och analysera sina lösningar.
Bedöma vilka konstruktioner som är lämpliga att använda för ett problem.
#Kursmoment
Kursen är uppdelad i kursmoment där varje kursmoment uppskattas till 20h studerande i form av programmering, undersökning, läsande, övningar och uppgifter.
#Kmom01: Kom i gång med Python
Det första vi skall göra är att skaffa oss en utvecklingsmiljö och kika i kurslitteraturen. Sedan bekantar vi oss med värden och variabler både genom litteraturstudier och praktiska övningar. Som avslutning på kursmomentet skriver vi ett litet program, där vi använder våra kunskaper om värden och variabler.
Instruktion till kursmoment 01.
#Kmom02: Villkor och loopar
Kom i gång med grunderna i Python och öva hur du skriver kod med if-satser, loopar och hur du använder de inbyggda funktionerna. Därefter är det dags att skriva ditt första lite större program där Marvin skall få lite intelligens så hen kan svara på frågor.
Instruktion till kursmoment 02.
#Kmom03: Funktioner och moduler
I detta kursmoment tittar vi hur vi kan använda funktioner för att strukturera våra kod i små återanvändbara delar. Vi tränar på detta i övningar och uppgifter. Vi fortsätter även med våra Marvin-bot som strukturerar med hjälp av funktioner och lär Marvin nya saker.
Instruktion till kursmoment 03.
#Kmom04: Listor
Lär dig grunderna i datastrukturen listor. En lista är en linjär datastruktur som är inbyggd i Python. Värdena i en lista behöver inte vara av samma typ, utan kan variera, beroende på vilket användningsområde den används i. Du använder sedan dina kunskaper och praktiska färdigheter för att utöka funktionaliteten i Marvin.
Instruktion till kursmoment 04.
#Kmom05: Dictionaries och Tupler
Lär dig mer om datastrukturer i Python, nu handlar det om dictionaries och tupler. Dictionaries sparar data som ett nyckel-värde par och tupler strukturer vår data i mindre enheter med ett sammanhang.
Instruktion till kursmoment 05.
#Kmom06: Filer
Du kommer även lära dig hur man kan läsa information från en fil samt att lagra information i en fil. Du ska använda allt du har lärt dig i kursen än så länge för att skapa ett program för textanalys.
Instruktion till kursmoment 06.
#Kmom07/10: Individuell examination
Avslutningsvis gör du en individuell examination enligt en specifikation. Den individuella examinationen är det sista du gör. Tillsammans med alla resultatet från de quiz du gjort används detta som underlag för att examinera dig från kursen.
Instruktion till kursmoment 10.
#Kurslitteratur
Måste jag skaffa kurslitteraturen?
#Kurslitteratur
Följande bok är kurslitteratur tillsammans med övrigt material som finns i respektive kursmoment.
Det finns läsanvisningar i samband med varje kursmoment.
- Python for Everybody - Exploring data in Python3 – Charles R Severance En introduktionsbok med öppen licens som gör att boken finns tillgänglig fritt på bokens webbplats. Boken ger en bra introduktion till nybörjaren i Python via fokus på informatik och informationsbehandling.
#Referenslitteratur
Följande bok är referenslitteratur. De kan vara bra att ha tillhands och ger lite extra läsmöjligheter.
- Think Python - How to Think Like a Computer Scientist – Allen B. Downey En introduktionsbok med öppen licens som gör att boken finns tillgänglig fritt på bokens webbplats. Boken ger en bra introduktion till nybörjaren i Python via fokus på datavetenskap och matematik.
#Övrig litteratur
Det finns flera fria böcker till Python. Här följer ett par andra böcker som inte är kurslitteratur men som kan vara intressanta att kika på för den som ytterligare vill dyka ned i Python.
Dive into Python 3 – Mark Pilgrim En intro-bok till Python 3 för den som redan kan Python 2 eller kan ett annat programmeringsspråk.
Invent Your Own Computer Games with Python – Al Sweigart en nybörjarbok i Python som fokuserar på övningar med spel.
#Läsanvisningar
Här följer en sammanställning av de läsanvisningar till kurslitteraturen som ges i varje kursmoment.
Kursmoment | Python for Everybody |
---|---|
Kmom01 | Ch 1, 2 |
Kmom02 | Ch 3, 5, 6 |
Kmom03 | Ch 8 |
Kmom04 | Ch 4 |
Kmom05 | Ch 9, 10 |
Kmom06 | Ch 7 |
Dessutom har varje kursmoment läsanvisningar i artiklar och videos.
#Rekommenderad studieplan
Kursen har en rekommenderad studieplan som visar en översikt över kursens olika moment och när de i tiden bör utföras för att studenten skall ligga i fas med kursens planering.
I studieplanen visas när rättning sker av respektive inlämnat moment samt när det finns möjligheter att göra restinlämningar.
Läs mer om den rekommenderade studieplanen.
#Lektionsplan
Det finns en lektionsplan som visar en detaljplanering för undervisningen i kursen, vecka för vecka.
Läs mer om lektionsplanen.
#Lärarstöd och handledning
Schemalagda labbtillfällen, hangouts samt forum och chatt de viktigaste källorna för handledning. Läs om handledning och hjälp-till-självhjälp.
#Ladok
Enligt kursplanen finns ett antal ladokmoment och de är kopplade till kursens kursmoment enligt följande.
Kursens moment | Ladok moment enligt kursplan | Betyg |
---|---|---|
Kmom01 + kmom02 | Inlämning 1 á 2.5hp | G-U |
Kmom03 + kmom04 | Inlämning 2 á 2.5hp | G-U |
Kmom05 - kmom10 | Inlämning 3 á 2.5hp | A-F |
Den sista inlämningen bestämmer kursens slutbetyg vilket utfärdas när samtliga moment godkänts.
Läs mer om rapportering av resultat.
#Betygsättning
Det finns ett särskilt dokument som beskriver hur bedömning och betygsättning sker.
#Kursutvärdering och kursutveckling
Det finns ett särskilt dokument som beskriver hur arbetet med kursutvärderingar och kursutveckling sker. Det är oerhört viktigt att du säger till vad du tycker om kurs och kursmaterial, du kan alltid hojta till i både forum, chatt eller mail.
Läs om hur vi jobbar med kursutvärdering och kursutveckling.
#Kursplan
Kursplanen är kursens formella dokument som fastställts av högskolan. När kursen utvärderas görs det mot kursplanen. I kursplanen kan du läsa om kursens klassificering, syfte, innehåll, mål, generella förmågor, lärande och undervisning, bedömning och examination, litteratur, mm.
Från och med hösten 2023 byter kursen kurskod till DV1670.
Fram till och med 2022 gick kursen med kurskoden DV1531
#Versioner av kursen
Om du påbörjat den äldre version av kursen så skall du också slutföra denna versionen av kursen (eller göra om den nya kursen från start). Alternativt rådgör du med den som är kursansvarig.
Från och med höstterminen 2023 finns kursmaterialet i python (v5).
Från och med höstterminen 2021 finns kursmaterialet i python (v4).
Från och med höstterminen 2020 finns kursmaterialet i python (v3).
Från och med höstterminen 2018 finns kursmaterialet i python (v2).
Om du gick kursen tidigare, fram till och med höstterminen 2017, så finns kursmaterialet i python (v1).
#Revision history
- 2024-09-04: (M, aar) Tagit bort texter om redovisningstext.
- 2023-08-18: (L, aar) Uppdaterade mål så det stämmer med nya kursplanen.
- 2023-06-15: (K, aar) Skapade v5 för byta redovisningstext till quiz.
- 2022-05-13: (J, mos) Not om ny kurskod.
- 2021-05-27: (I, aar) Flyttat om kmom inför v4.
- 2018-08-06: (H, efo) Uppdatering från projekt till individuell examination.
- 2018-06-20: (G, aar) Uppdatering av vilka kapitels som ska läsas när.
- 2018-06-19: (F, efo) Uppdatering av kmom beskrivningar inför v2 HT18.
- 2018-06-08: (prel, mos) Nytt dokument inför uppdatering av kursen.
- 2017-05-29: (E, mos) Genomgång och mindre uppdatering kursplan, justering kurslitteratur.
- 2016-11-01: (D, mos) Ladokmoment och studieplan omskrivna.
- 2015-01-09: (C, mos) Text om studieplan kurspaket.
- 2015-01-08: (B, mos) Bort blå ruta med kursutveckling pågår.
- 2014-06-23: (A, mos) Första revisionen inför kursstart HT2014.