Kunskapsdokument - Python

Introduktion

Kort introduktion till Python. Vad är det, varför är det relevant?

Python 2.x eller 3.x

Då bägge versionerna är tillgängliga, och används, så är det relevant att fundera på skillander och varför bägge fortfarande används. Det korta svaret är att Python 2.x är dåtiden och Python 3.x är nutid och framtid. Python 3.x lanserades 2008 och det sista stora släppet av Python 2.x gjordes 2010 och det är bestämt att 2.x inte skall göra några fler större uppdateringar. Det som gör att både 2.x och 3.x används beror nog främst på att det finns moduler, paket och bibliotek som inte fungerar med båda versionerna och eftersom det finns mängder av applikationer som redan är programmerade för 2.x och de paket som dessa applikationer är beroende av kanske inte fungerar för version 3.x så har dessa applikationer inte uppgraderats för 3.x. Det finns alltså ett behov av att kunna använda bägge versionerna.

Vi kommer dock att fokusera på 3.x och det beror på att det som tidigare sagt är nutid och framtid. Det är dock inte helt omöjligt att du i framtiden kommer i kontakt med någon applikation som körs på 2.x och som behöver utvecklas vidare eller byggas om för att passa 3.x. Detta är inget unikt för Python utan ett vanligt arbete för en utvecklare.

Python på mac

macOS Catalina

I samband med att vi gjorde installationer i september 2020 så fick vi information om att macOS Catalina är det sista operativsystem som har Python 2 förinstallerat. Vid nästa uppgradering som kommer under hösten 2020 till macOS Big Sur så kommer denna guiden behöva justeras.
Redan idag så finns Python 3 förberett för installation, mer om detta nedan.

På din mac skall python redan finnas installerad, vi skall kika på hur det fungerar.

Senaste versionen

När denna guiden gjordes så var aktuell version av Python 2.7.10 (augusti 2018) och nu i september 2020 så är aktuell version 2.7.16. För oss kommer det inte vara någon skillnad, förutom att bilderna nedan visar version 2.7.10.

På din mac så finns det redan en installation av Python. I min dator så är det i september version 2.7.16 som är installerad. Bilderna nedan är lite äldre, de kommer från hösten 2018.

Köra python i teminalen

På din mac så skall du söka efter terminalen, det gör du genom att klicka på förstoringsglaset uppe i högra hörnet, eller trycka på tangenterna command + space, och sedan söka efter Terminal.

Inne i terminalen så skriver du python --version och trycker enter, då kommer du få besked om python är installerad och vilken version som är installerad.

Om du nu skriver python i terminalen så kommer Pythons interpretator att starta vilket innebär att Python nu är redo att lyssna på dina kommandon och utföra dem.

Vi testar att köra några kommandon

De kommandon som jag har skrivit är troligtvis självförklarande, först gör jag en enkel beräkning och då skrivs svaret ut. Sedan skapar jag två variabler (a & b) och skapar den tredje (c) genom att addera de två andra. Jag skriver sedan ut innehållet i variabeln c. Slutligen så skriver jag exit() för att stänga av interpretatorn.

Eftersom Python är ett scriptspråk så går det att köra olika kommandon mot interpretatorn under tiden som programmet körs. Jämför detta med andra programmeringsspråk där koden behöver kompileras och köras som ett enskilt program. Nu var det dock inte Python 2 vi skulle jobba med utan vi skall installera Python3.

Installera Python3

Senaste versionen

När denna guiden gjordes så var aktuell version av Python 3.7.0 (augusti 2018) och nu i september 2020 så är aktuell version 3.8.5. För oss kommer det inte vara någon skillnad, förutom att bilderna nedan visar version 3.7.0.

Inne i terminalen så skriver du python3 --version och trycker enter, då kommer en av två saker att hända.

  • Du får svaret att Python 3.7.3 är installerat.
  • Du får upp en ruta om att något behöver installeras. Godkänn detta och genomför installationen.
    Skriv sedan python3 --version i terminalen och se till att du då får svaret Python 3.7.3.

macOS Big Sur

I samband med att macOS Big Sur släpps under hösten 2020 så kommer troligtvis Python3 vara förinstallerat. Hur detta fungerar då blir intressant och kommer kräva att denna guiden behöver uppdateras.

För denna kursen kommer Python 3.7.3 fungera utmärkt men som allt annat inom IT så kommer det hela tiden nya versioner och i de flesta fall är det bra att ha den senaste versionen installerad. Därför så skall vi nu lägga till även den senaste versionen.

Gå till Pythons hemsida och klicka på menyalternativet Downloads. Klicka sedan på knappen för den senaste versionen av Python3 och då laddas installationsfilen ner.

Kör sedan installationsfilen och det skall inte vara några problem att installera Python3. Vid sista tillfället så blir du ombedd att ange ett lösenord till din dator så att programmet kan installeras. När allt är klart kan du öppna Terminalen igen, om den är stängd. Kolla nu att Python3 är installerad genom att fråga efter vilken version som är installerad.

Testa också några kommandon om du vill.

Köra Python från fil

Som du förstår så kommer det bli ohållbart att skriva och köra rad för rad mot intepretatorn. Det skulle innebära att varje gång vi vill köra en applikation måste skriva alla rader som applikationen består av. Därför skall vi nu testa att skapa en fil med flera kommandon som vi sedan kör mot interpretatorn.

Vi leker vidare i teminalen en stund till, det vi nu skall göra går att göra på andra sätt men eftersom vi ändå utgår från Terminalen är det lika bra att fortsätta här. Vi använder UNIX-kommandon när vi skriver i Terminalen och du behöver inte lära dig allt vi gör utantill, senare kommer vi jobba med andra lösningar.

Öppna terminalen, om den inte redan är öppen. Vill du rensa all text som redan finns så skriver du clear och trycker på enter så kommer fönstret bli rent och fint.

Först skall vi kolla i vilken mapp vi befinner oss i. På engelska kallas det folder och på svenska kan vi också säga katalog. Skriv kommandot ls för att visa vad som finns i den mapp där vi just nu befinner oss i.

Här ser du att jag är i min hemmapp vilket du också bör vara. Vi vill gå till mappen Desktop och skriver då kommandot cd Desktop, där cd står för change directory och sedan vilken mapp vi vill gå in i.

I den mappen vill vi nu skapa vår skriptfil. Skriv kommandot touch test.py vilket gör att en fil som heter test.py skapas i den mapp där vi befinner oss.

Du får ingen information om att filen har skapats, är du osäker att det har fungerat så skiv kommandot ls för att lista alla filer i mappen.

Kanon, filen ligger på rätt plats. Gå nu till Finder och leta upp den fil som du skapade i mappen Desktop. Öppna sedan filen med Textredigeraren och skriv koden som du ser på bilden under.

Bra. Nu kan vi testa att köra filen från terminalen. Med kommandot python3 test.py kommer innehållet i filen test.py att köras genom pyton3's interpretator.

Det går också att köra filen genom python2 genom att skriva kommandot python test.py.

Det fungerar för att de koder vi har skrivit nu inte är specifika för python2 eller pyton3. Senare i kursen kanske du skriver kod som inte fungerar i bägge versionerna.

IDE

Att skapa skriptfiler och köra genom terminalen fungerar men det blir lite omständigt om vi skall skriva större applikationer samtidigt som vi behöver testa en hel del under tiden som vi utvecklar. Dessutom så kommer du märka att när man kodar så kommer vi alla att skriva en hel del felaktig kod som vi behöver hjälp med att identifiera. Tänk dig att du skriver en text och får hjälp av det program som du skriver i att rätta dina stavfel, på samma sätt behöver vi hjälp när vi kodar. Denna hjälp finns inte inbyggd i Textredigeraren men det finns andra texteditorer som har denna funktionalitet inbyggd. I många av dem kan man också direkt testa koden och köra applikationer som vi skapar. Dessa program kallas för IDE vilket står för Integrated Development Environment.

Den IDE vi skall köra i denna kursen är PyCharm och är specialanpassad för Python.

Gå till jetbrains.com/pycharm för att komma till PyCharms hemsida. Klicka sedan på Download now och välj sedan att ladda ner Community-alternativet. Kör sedan installationsfilen och kopiera programmet till din dators Programmapp.

När du kör programmet första gången får du frågan om du vill importera inställningar men det vill du ju inte eftersom du inte har några sådana sedan tidigare. Acceptera sedan villkoren för att använda programmet, välj sedan om du vill dela användardata eller inte.

Nu får du lite frågor om hur du vill att din konfiguration skall se ut, min rekommendation är att välja Skip Remaining and Set Dafaults för att få standardinställningen av programmet. Vi kommer senare gå igenom vissa ändringar som vi vill göra med konfigurationen.

Nu bör du komma du till välkomstrutan där du kan skapa ett nytt projekt. Klicka på + Create New Project.

Nu skall du ge projektet ett namn, jag valde test, och du kan även välja var du skall lägga projektets filer. Just nu lägger jag det i min hemkatalog och katalogen /PycharmProjects/ som PyCharm skapar åt mig. Det går bra så länge, vi kommer senare att flytta denna mappen till en plats på hårddisken där vi har automatisk säkerhetskopiering. Här ser du också att du kan välja vilken intepretator du vill köra ditt projekt med, välj den senaste versionen. Klicka sedan på Create.

Nu kommer vi till själva kodmiljön där vi ser att det finns en ruta på vänster sida där projektet finns och en tom ruta till höger där vi sedan skall skriva kod. Börja med att högerklicka/tvåfingerklicka på mappen test och välja att skapa en ny fil. Döp filen till någon bra namn och glöm inte att du behöver ange filändelsen .py.

När filen är skapad så skriv den koden vi vill köra, jag testar med print("Hello World!").

När du har skrivit din kod så klicka på den gröna playknappen som du hittar uppe till höger i programmet. Om du inte hittar den iconen så välj att köra Run->'test' eller Run->Run och välj sedan vilket projekt du vill köra.

Perfekt, du har nu skapat, och kört, dit första projekt genom PyCharm. Detta är miljön som vi kommer använda oss av under kursen så det gäller att göra sig hemmastadd här.

Säkerhetskopiering

Alla dina projekt kommer att lägga sig på datorn och det är ditt ansvar att hitta en lösning så att dessa projekt säkerhetskopieras och inte försvinner. Mitt tips är att flyttar in dem i någon molntjänst. Du bör vara van vid att jobba i google Drive, så mitt förslag är att installera desktopapplikationen så att du fysiskt kan lägga filer och projekt i din dator och att de automatiskt synkas mot molnet. Alternativa tjänster är iCloud, Dropbox eller OneDrive.

Tänk på att alltid hålla filer och projekt säkerhetskopierade, det kan aldrig vara lärarens problem att datorn kraschar och att projektet försvinner dagarna före en deadline. Behåll också alla filer och projekt tills du har fått ett betyg på kursen. Sedan är det alltid elever som hör av sig när de har börjat på högskola och frågar om jag har kvar deras inlämning från den och den kursen. Jag sparar ingenting, men det är enkelt att spara det du själv har skapat.