Kmom01: Kom igång med Python
Det första vi skall göra är att skaffa oss en utvecklingsmiljö och kika i kurslitteraturen. Python fungerar på många miljöer och i olika varianter.
Vi börjar skriva de första enkla programmen för att komma underfund med hur Python kan användas och hur programmeringsspråket fungerar i grunden.
Så här kan det se ut när du är klar med kmom01 uppgiften Convert.
Förberedelser
Section titled “Förberedelser”Innan du börjar med kmom01 så behöver du ha jobbat igenom Kom igång och installerat labbmiljö, kursrepo och utvecklingsmiljö.
Måndag vecka 1
Section titled “Måndag vecka 1”
Måndag vecka 1
Section titled “Måndag vecka 1”Intro till programmering
Section titled “Intro till programmering”Vi börjar med att kika på vad programmering är och hur det fungerar. Vi kommer att jobba med Python som är ett av de mest populära programmeringsspråken idag. Python används inom många områden, allt från webbutveckling till datavetenskap och maskininlärning.
Att göra
Section titled “Att göra”Som en generell introduktion till programming och vissa av de tekniker och konstruktioner vi går igenom, kolla på följande video från Harvards CS50 kurs.
Intro till Python
Section titled “Intro till Python”Efter att ha kollat på videon ovan har du fått en allmän orientering om programmering och vad det handlar om. Nu är det dags att börja med Python.
I kursen kommer vi använda boken Python for Everybody: Exploring data in Python3.
Boken kommer inte passa allas lärandestil eller så förklaras sakerna inte på det sättet att du förstår det. Det är helt okej. Det finns många andra resurser och böcker som du kan använda för att lära dig Python. Det är OK att använda andra resurser och böcker. Det viktiga är att du hittar något som passar dig och din lärande stil.
En viktig del av programmering är att läsa dokumentation. Du kommer att behöva läsa dokumentation för att förstå hur olika funktioner och moduler fungerar. Det är en viktig del av programmering och något du kommer att göra mycket av i framtiden.
Pythons dokumentation är tyvärr rätt rörig som nybörjare. De två viktigaste delarna är:
- Python Standard Library som beskriver de olika modulerna och deras funktioner.
- Python Language Reference som beskriver språket och dess syntax.
Att göra
Section titled “Att göra”-
Läs och jobba igenom följande kapitel i boken (alternativt kolla på videorna):
- Ch1 Why should you learn to write programs?
- Ch2 Variables, expressions and statements
-
Mer material om variabler, datatyper, input och output. En del repitition från boken och en del nytt.
- Jobba igenom artikeln “Introduktion till variabler och datatyper”
-
För att bekanta dig med Pythons dokumentation, kika i Python Standard Library. Spendera inte mer än 60 minuter på detta.
- Läs om Built-in Functions och Built-in Constants. Läs inte igenom alla funktioner utan kolla på de som verkar intressanta och relevanta för det du jobbar med T.ex.
input()
,len()
,bool()
,int()
ochisinstance()
. Det är bra att ha en översikt över vad som finns i språket och vad som går att göra. - Läs också om datatypen Text Sequence Type — str
- Läs om Built-in Functions och Built-in Constants. Läs inte igenom alla funktioner utan kolla på de som verkar intressanta och relevanta för det du jobbar med T.ex.
Onsdag
Section titled “Onsdag”
Onsdag
Section titled “Onsdag”Jobba igenom seminarium kmom01 vecka 1. Det görs på onsdagens lektion.
Torsdag och fredag
Section titled “Torsdag och fredag”
Torsdag och fredag
Section titled “Torsdag och fredag”Att göra
Section titled “Att göra”-
Kolla på Study Less Study Smart, 60 min video hur man studerar effektivt. Om ni känner att den är för lång kan ni kolla på Study Less Study Smart: A 6-Minute Summary.
-
Lär dig jobba i repot och lös en exempel uppgift för att lära dig om tester och validering, “Testning, validering och jobba med kursrepot”.
-
Hur du hanterar långa rader med kod och valideringsfelet “Line too long”.
- Jobba igenom artikeln/övningen “Radbrytning i Python”
-
På Canvas, svara på quizzet
kmom01 quiz
. Det är inte obligatoriskt men ett bra sätt för dig att kolla om du har hängt med så här långt.
Nu har du jobbat igenom det förbereda materialet för veckan. Förhoppningsvis har du inte använt upp alla 20h än. Använd resten av tiden till att öva på det du har lärt dig.
- Utforska själv, experimentera och lek med koden. Gör ett antagande om hur kod/python fungera, skriv en liten kodsnutt för att testa ditt antagande och se om det stämmer.
- Om du vill använda dig av AI, kan du här läsa om hur du gör det på bästa sätt i kursen.
- Läs “Använda AI som stöd i dina studier”
- Fundera nu på vad du har svårt att förstå med programmeringen och vill bli bättre på. Använd AI för att generera övningsuppgifter som du kan träna på. När du stöter på problem i din kod eller något du inte förstår, be AI att generera ny uppgift med liknande fel/problem.
- Använd en webbtjänst för att hitta övningsuppgifter. Om du vill jobba med avancerad programmering på företag som Google, Facebook, Amazon, Microsoft, etc. efter dina studier så är dessa webbtjänster bra att träna på. De har ofta samma typ av uppgifter som du kan få på anställningsintervjuer.
Måndag vecka 2
Section titled “Måndag vecka 2”
Måndag vecka 2
Section titled “Måndag vecka 2”Villkor och if-satser
Section titled “Villkor och if-satser”Koden du har skrivit än så länge har bara exekverats uppifrån och ner och användaren har inte kunnat göra några val. Programmen har inte kunnat reagera på olika indata eller situationer. Det är dags att ändra på det. I detta moment kommer vi att gå igenom villkor och if-satser. Det är en grundläggande del av programmering och något du kommer att använda mycket i framtiden.
Att göra
Section titled “Att göra”-
Läs och jobba igenom följande kapitel i boken (alternativt kolla på videorna):
- Ch3 Conditional execution
-
Mer material om jämförelse och villkor. En del repetition från boken och en del nytt.
Exempel på alternativt material om boken inte var tillräcklig:
- Jobba igenom artikeln/övningen “Jämförelseoperatorer och booleska värden”
- Jobba igenom artikeln/övningen “Villkor”
-
Kolla på bilden My code isn’t working. Spara bilden för att underlätta när saker går fel.
-
Jobba igenom labben lab_01 som ger dig möjlighet att träna på det du har lärt dig i kmom01.
Onsdag
Section titled “Onsdag”
Onsdag
Section titled “Onsdag”Jobba igenom seminarium kmom01 vecka 2. Det görs på onsdagens lektion.
Torsdag och fredag
Section titled “Torsdag och fredag”
Torsdag och fredag
Section titled “Torsdag och fredag”Nu finns det inte mer material för att lära sig kursmomentets koncept. Nu är det bara kvar att lösa uppgiften.
Att göra
Section titled “Att göra”- Lös uppgifterna under Uppgifter.
Lästips
Section titled “Lästips”Inga lästips än så länge.
Uppgifter
Section titled “Uppgifter”Följande uppgifter skall utföras och resultatet skall redovisas.
- På Canvas, gör quizzet
Fusk policy. Måste få alla rätt, oändlig med försök
.
- Gör uppgiften “Ditt första Python-skript” för att visa att du har koll på grunderna. Spara alla filer under
src/kmom01/convert
.
Resultat & Redovisning
Section titled “Resultat & Redovisning”Läs instruktionen om hur du skall redovisa.
Se till att följande frågor besvaras i din redovisningstext i din rapportsida.
- Berätta hur din utvecklingsmiljö ser ut (när du jobbar med kursen) och om du anpassat den på något särskilt sätt?
- Gick det bra att installera kursens utvecklingsmiljö eller var det något som krånglade?
- Är du bekant med terminalen och Unix-kommandon sedan tidigare?
- Är du bekant med Python sedan tidigare eller har du jobbat med liknande tekniker?
- Gick det bra att komma i gång med kursmomentet rent allmänt eller var det något som var lurigt, svårt eller utmanande?
- Vilket koncept var det svåraste att förstå i detta kmom? Känner du att du förstår det nu?
- Finns det någon det du tycker var extra intressant eller roligt att jobba med i detta kmom?
- Borde vi ändra något i kursmomentet för att göra det bättre? Eller utöka information om något?
- Vilken är din TIL för detta kmom?
TIL är en akronym för “Today I Learned” vilket leksamt anspelar på att det finns alltid nya saker att lära sig, varje dag. Man brukar lyfta upp saker man lärt sig och där man kanske hajade till lite extra över dess nyttighet eller enkelhet, eller så var det bara en ny lärdom för dagen som man vill notera.