Labb 1: Filer, klasser och listor i Python
- Inlämningsdatum 31 aug 2020 av 20:00
- Poäng 10
- Lämnar in en filuppladdning
- Filtyper py och jpg
Mål | Läs i kursboken |
|
□ Hederskodex
Bägge gruppmedlemmarna ska göra följande:
- Läs igenom hederskodexen.
- Gör Hederskodex-quiz
□ Git
Med git kan du spara olika versioner av din kod, och dela koden med din labbkompis.
Bägge gruppmedlemmarna ska göra följande:
- Gå in på https://gits-15.sys.kth.se/
- Gå igenom Git Hello World Tutorial Links to an external site. (ca 10 min)
- Git-quiz
□ Parprogrammering
Laborationerna görs lämpligen i grupper om två.
- Läs på om parprogrammering
- Parprogrammering på distans kan genomföras på olika sätt. Läs om några exempel på hur parprogrammering på distans kan gå till
- Diskutera med din labbkompis hur ni ska organisera ert arbete. Gör sedan detta Parprogrammeringsquiz
□ Kattis 
Bägge gruppmedlemmarna ska göra följande:
- Gå till sidan för DD1320 tildah20 i Kattis Links to an external site.
- Logga in (längst upp till höger) med ditt KTH-id
- Tryck på länken I am a student taking this course
- Läs om hur man lämnar in Python3-program i dokumentationen
- Lös problemet Hello
□ Skriv ett Pokémonprogram i Python
Ladda ner senaste versionen av Python3 här: https://www.python.org/downloads/ Links to an external site.
Här får ni chans att öva parprogrammeringen!
I Armands pokedex Links to an external site.finns data om olika egenskaper hos pokémon. Tryck på Raw och spara ner dessa data till en csv-fil (se menyn Arkiv i webbläsaren).
- Skriv en egen klass som representerar en Pokémon.
- Klassen ska ha ett attribut för varje egenskap i tabellen.
- Klassen ska ha minst fem metoder, bland annat dessa tre:
- __init__
- __str__
- __lt__
- Skriv en funktion som skapar ett Pokémon-objekt (hitta på egna testdata) och anropar metoderna, så att du ser att dom fungerar som dom ska.
- Skriv sedan en funktion som
- läser in alla rader från filen,
- skapar objekt,
- lagrar objekten i en lista (Pythons list())
- returnerar listan.
- Skriv också en funktion för att söka efter en pokémon i listan.
- Testa till sist att programmet fungerar korrekt.
OBS! Ett enkelt program räcker här - om du har tid över kan du gå vidare till nästa labb!
Redovisning
Labben lämnas in indivuellt med "Lämna in uppgift"-knappen högst upp på denna sida, och ska redovisas muntligt av bägge gruppmedlemmarna. Skriv bägge gruppmedlemmarnas namn i kommentarsfältet!
Boka en tid för den muntliga redovisningen i Zoom
Vid redovisning ska bägge gruppmedlemmarna
- kunna sammanfatta hederskodexen,
- kunna förklara vad Git används till, och beskriva arbetsgången,
- kunna beskriva riktlinjerna för parprogrammering,
- kunna visa upp en godkänd Kattis-inlämning (av problemet Hello),
- kunna förklara hur klasser/objekt/listor/filhantering fungerar i Python, med hjälp av program.
Betyg
Denna labb kan endast ge betyg E. Du måste lämna in den i Canvas och redovisa den muntligt i tid för att få göra labbarna för högre betyg i period 2.