Skip to content

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.

Play

Innan du börjar med kmom01 så behöver du ha jobbat igenom Kom igång och installerat labbmiljö, kursrepo och utvecklingsmiljö.


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.

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.

Play

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:

  1. 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
  2. Mer material om variabler, datatyper, input och output. En del repitition från boken och en del nytt.

  3. 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() och isinstance(). 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

Jobba igenom seminarium kmom01 vecka 1. Det görs på onsdagens lektion.


  1. 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.

  2. 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”.

  3. Hur du hanterar långa rader med kod och valideringsfelet “Line too long”.

  4. 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.

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.

  1. Läs och jobba igenom följande kapitel i boken (alternativt kolla på videorna):

    • Ch3 Conditional execution
  2. 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:

  3. Kolla på bilden My code isn’t working. Spara bilden för att underlätta när saker går fel.

  4. Jobba igenom labben lab_01 som ger dig möjlighet att träna på det du har lärt dig i kmom01.

Jobba igenom seminarium kmom01 vecka 2. Det görs på onsdagens lektion.

Nu finns det inte mer material för att lära sig kursmomentets koncept. Nu är det bara kvar att lösa uppgiften.

  1. Lös uppgifterna under Uppgifter.

Inga lästips än så länge.

Följande uppgifter skall utföras och resultatet skall redovisas.

  1. På Canvas, gör quizzet Fusk policy. Måste få alla rätt, oändlig med försök.
  1. 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.

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.