Kunskapsbanken

Artiklar, guider, tips och trix tillsammans med exempelprogram inom webbprogrammering och webbutveckling. Inläggen är listade i den ordning som de senast uppdaterats.

Python pakethantering med PIP

Python har många inbyggda moduler men det finns många fler externa moduler som kan användas. PIP är ett verktyg för att installera sådana externa moduler. Det är en pakethanterare för Pythons externa moduler.

Denna artikel beskriver kortfattat hur du jobbar med PIP och hur du installerar pip3 för Python 3.

Read more »

Category: labbmiljo.

Sätt upp session i Pico

För att Pico ska kunna veta om den ska ladda in ert vanliga tema eller det mörka temat så behöver vi sätta upp en session. Vi tar vara på våra kunskaper ifrån webtec och sätter upp det i Pico. Artikeln är uppdelad i ett par olika delar där varje del är filer ni behöver uppdatera.

Read more »

Category: design, pico.

Absoluta och relativa sökvägar

När vi arbetar med filer så lagras dessa i en katalog (eng folder). Vi har delat in vårt lagringsutrymme i en trädstruktur och vi kan ofta välja var i denna trädstruktur vi vill placera våra filer (vissa filer har dock en bestämd placering). Om man skriver pwd (print working directory) i Unix-terminalen får vi sökvägen till den aktuella katalogen, ex-vis /home/bbe/dbwebb-kurser/python/tester vilket innebär att katalogen tester är den aktuella katalogen och den finns i, dvs är en underkatalog till, python som är en underkatalog till dbwebb-kurser osv.

När vi med Python-kod skapar en text-fil som vi skriver till kan det ex-vis se ut så här

filename = "my_friends.txt"
friends = "Anna\nSven\nPia\nLinda\nKaj\n"
with open(filename, "w") as file_handler:
    file_handler.write(friends)

Filen namngiven "my_friends.txt" skapas då i den katalog som är arbetskatalog (current working directory). Om vi t.ex har startat VS code i katalogen python, som därmed blir arbetskatalogen, kommer filen med namnet "my_friends.txt" att placeras i denna katalog.

Om vi i stället vill placera en fil i katalogen tester, som finns en nivå ner, kan vi göra det genom att ange den relativa sökvägen eller den absoluta sökvägen.

Vi börjar med den relativa sökvägen, vilken motsvaras av att den utgår från aktuella katalog. Som i detta fall är python och skriver filen i testersom är en underkatalog

filename = "tester/my_friends.txt" 
friends = "Anna\nSven\nPia\nLinda\nKaj\n"
with open(filename, "w") as file_handler:
    file_handler.write(friends)

Och fortsätter med den absoluta sökvägen, vilken motsvaras av att den utgår från rot-katalog och innehåller hela vägen avseende katalogstrukturen.

filename = "/home/bbe/dbwebb-kurser/python/tester/my_friends.txt"
friends = "Anna\nSven\nPia\nLinda\nKaj\n"
with open(filename, "w") as file_handler:
    file_handler.write(friends)

Read more »

Category: python.

Fizz Buzz

Fizz Buzz är en lek som syftar till att lära barn division. Deltagarna räknar i tur och ordning från 1 och uppåt. När en deltagare hamnar på ett tal jämnt delbart med 3 ska hen istället säga “Fizz”. Om det är ett tal jämnt delbart med 5 ska hen säga “Buzz”. Är talet jämnt delbart med både 3 och 5 ska hen säga “FizzBuzz”.

Ex: 1, 2, Fizz, 4, Buzz, 6, 7, 8, Fizz, Buzz, 11, Fizz, 13, 14, FizzBuzz, 16, 17, Fizz, 19, Buzz, …..

Om en deltagare tvekar eller missar att ersätta ett tal med “Fizz”, “Buzz” eller “FizzBuzz” är hen ute ur leken.

Vi ska göra ett program som visar “facit” fram till talet 100, dvs som skriver ut alla heltal inom [1..100] och som ersätter tal delbara med 3 med Fizz, tal delbara med 5 med Buzz och tal delbara med både 3 och 5 med FizzBuzz.

Read more »

Category: python.

Installera Bash i Windows med WSL och Ubuntu

Så här gör du för att installera Bash med Ubuntu i Windows via WSL samt tar hjälp av pakethanteraren och installerar det som behövs för att komma igång med kurserna.

Read more »

Category: labbmiljo, windows, bash.

Installera Python i terminalen

Denna artikel visar hur du kommer igång och installerar python i terminalen.

Read more »

Category: python, labbmiljö.

Lagrade procedurer i databas

Ibland räcker det inte till med enbart SQL utan man behöver någon form av ytterligare programmeringsmässig hantering av informationen. För att ta ett exempel, säg att man vill flytta pengar från ett konto till ett annat, men bara om det finns tillräckligt mycket pengar på kontot.

Man kan naturligtvis koda detta i godtyckligt externt programmeringsspråk. Men kan det finnas en möjlighet att koda sådant direkt i databasen?

Här kommer lagrade procedurer kommer till vår hjälp.

Read more »

Category: databas, sql, kurs databas.

Real-tids chatt

I denna övningen tittar vi på hur vi kan använda websockets för att kommunicera i realtid mellan flera klienter.

Read more »

Datastrukturer

Inom programmering är en ‘datastruktur’ en struktur för att organisera data. Valet av datastruktur är viktigt då de har olika betydelse för prestanda och presterar olika beroende på vilka algoritmer som har planerats att användas. En datastruktur är en abstrakt beskrivning till skillnad från ‘datatyper’. En datatyp kan vara exempelvis Integer, String eller boolean. Det har en fast betydelse medan en datastruktur beskriver något odefinierbart, till exempel en lista eller array.

Read more »

Category: oopython.

Mer om enhetstester

Vi går några steg längre med våra enhetstester. Hur ska vi tänka när vi testar metoder som innehåller if-satser och loopar? Hur hanterar vi beroenden till annan kod?

Read more »

Category: oopython.