Nyqvist

Python Tutorial

Grundläggande Python

  1. Vad är Python? (Introduktion och dess användningsområden)
  2. Installation och setup (Installera Python, IDE och första programmet)
  3. Skriva ut text och ta emot text (Grunderna i att visa och läsa in data)
  4. Syntax (Syntax – Kommentarer, Indentation)
  5. Grunderna i datatyper (Strings, Numbers, Booleans)
  6. Operatorer i Python (Aritmetiska och logiska operatorer)
  7. Kontrollflöden (If, else, elif, loopar)
  8. Datastrukturer (Listor, tuples, dictionaries och sets)
  9. Stränghantering och vanliga metoder (Slicing, sökning, formatering)
  10. List comprehensions (Skapa listor på ett smidigare sätt)
  11. Slumpmässiga tal med random (Introduktion till random-modulen)
  12. Namngivningskonventioner i Python (Variabler, klasser, parametrar, filer)
  13. Felsökning och debugging med Thonny (Förstå och hantera felmeddelanden)
  14. Funktioner (Skapa, anropa och strukturera kod)
  15. Introduktion till moduler och bibliotek (Importera och använda standardbiblioteket)
  16. Filhantering (Läsning och skrivning till filer)
  17. Undantagshantering (try, except, finally)
  18. Scopes (Globala, lokala och icke-lokala variabler)

Regex och tidsdata

  1. Regex (Regular Expressions, sökning och mönster)
  2. Datum och tid med datetime (Hantera och manipulera datum och tid)

Filhantering och dataformat

  1. Läsning och skrivning till filer (en fördjupning)
  2. JSON och CSV (Arbeta med dataformat för lagring och överföring)
  3. XML-format (Introduktion till XML i Python)
  4. Avancerade filoperationer (Effektiv hantering av stora filer)

Objektorienterad programmering (OOP)

  1. Klasser och objekt (Grundläggande OOP-koncept)
  2. Arv (Hur klasser kan ärva egenskaper och metoder)
  3. Polymorfism (Flexibilitet i metoder och klasser)
  4. Encapsulation (Skyddade och privata attribut)
  5. Specialmetoder (Anpassa Python-klasser med metoder som init och str)

Dataanalys och visualisering

  1. NumPy (Grundläggande numeriska operationer och arbete med arrays)
  2. Pandas (Arbeta med dataframes och datamanipulation)
  3. Matplotlib (Skapa grafer och diagram för att visualisera data)
  4. Seaborn (Avancerad visualisering för dataanalys)

Bibliotek och verktyg

  1. PIP (Installera och hantera Python-paket)
  2. Requests (HTTP-anrop och API-användning)
  3. BeautifulSoup (Web scraping)
  4. Pytest (Testning och felsökning)
  5. Virtual environments(Skapa och använda virtuella miljöer)

Bygg strukturerad kod

  1. Organisera kod med paket (Introduktion till paket och projektstruktur)
  2. Logging i Python (Hantera loggar effektivt)
  3. Introduktion till testdriven utveckling (Grunder och praktiska exempel)

Webbapplikationer

  1. Flask (Bygga enkla webbapplikationer)
  2. Django (Bygga större och skalbara applikationer)
  3. RESTful API (Skapa och konsumera API)

Databaser och dokumentorienterade system

  1. SQL och relationella databaser (Grunder och CRUD-operationer)
  2. SQLite (Lättviktsdatabas för lokala projekt)
  3. PostgreSQL (Skalbar och avancerad databashantering)
  4. MongoDB (Introduktion till dokumentorienterade databaser)

Grafisk programmering

  1. Turtle (Grundläggande grafik och animationer)
  2. Tkinter (GUI-programmering med widgets och layouter)
  3. Pygame (Introduktion till spelutveckling)

Avancerade ämnen och tillämpningar

  1. Funktionell programmering (Högre ordningens funktioner, dekoratorer och closures)
  2. Asynkron programmering (Coroutines och asyncio)
  3. Machine Learning (Grundläggande koncept och bibliotek)
  4. Deep Learning (Introduktion till neurala nätverk)
  5. Natural Language Processing (Textanalys och språklig bearbetning)
  6. Web scraping (Extrahera data från webbsidor med Beautiful Soup och Scrapy)

Deployment och versionshantering

  1. Git (Versionshantering och samarbete)
  2. Deployment en flask app till en c-panel miljö
  3. Continuous integration och deployment (CI/CD)

Problemlösning och algoritmer

  1. Algoritmiskt tänkande (Introduktion till problemlösning)
  2. Datastrukturer och algoritmer (Sortering, sökning, träd, grafer)
  3. Problemlösningsstrategier(Divide and conquer, dynamisk programmering)