Dagens statistik

Gennemførte øvelser
-
Indtastede tegn Indskrevne ord
-
Øvelsestid
-

Samlet statistik

Gennemførte øvelser
-
Indtastede tegn Indskrevne ord
-
Øvelsestid
-

Lektion i tifingersystemet: Programmering i sproget Python

Tifingersystemet er vigtigt i programmering. Du er mere effektiv, når du bruger hurtige skriveteknikker til at skrive kode i programmeringssproget Python.

Lad os lære mere om sproget Python og tifingersystemet, når vi programmerer i Python.

Programmering i Python og tifingersystemet

At programmere i Python kræver præcision, rytme og konsekvens. I modsætning til Java eller C, hvor blokke defineres med krøllede parenteser og semikolon, bygger Python sin struktur på indryk og blanktegn. Det gør sproget meget eksplicit og strengt: måden du skriver koden på er uadskillelig fra, hvordan den udføres. Python kontrollerer en fils syntaks, før den udføres. Andre fejl opstår under kørsel, nogle gange først i en sjældent brugt gren af koden. Forkert indryk eller et manglende kolon kan forhindre filen i at blive udført. Derfor er nøjagtighed på tastaturet afgørende. Blindskrift (10-fingersystemet) - evnen til at skrive uden at kigge på tastaturet - støtter netop denne nøjagtighed. Det reducerer tilfældige tastefejl og giver mulighed for at koncentrere sig om logikken frem for selve tastetrykkene.

Blanktegn og indryk

Indryk er ikke en stilistisk detalje i Python - det er en del af syntaksen. Hver kodeblok skal indrykkes konsekvent. Inkonsekvent indryk, en tvetydig blanding af tabulatorer og mellemrum eller et manglende kolon i blokkens indledende linje giver en syntaksfejl. For begyndere kan det være frustrerende, men det lærer også disciplin. Med blindskrift bliver det en rutine at skrive indryk. PEP 8 anbefaler fire mellemrum pr. niveau, og en editor kan indsætte dem automatisk. Når du øver konsekvent indryk, bliver det lettere at holde koden overskuelig uden at afbryde tankegangen. I sprog med krøllede parenteser kan ujævnt indrykket kode stadig fungere; i Python afgrænser indrykket selve blokkene.

# Korrekt indryk
for i in range(3):
    print(i)

# Forkert indryk
for i in range(3):
    print(i)
  print(i)  # fejl

Nøgleord og syntaks

Python har en lille, men central samling nøgleord: def, class, if, elif, else, try, except, with. De skrives altid med små bogstaver og skal rammes korrekt. Kolonet : markerer starten på enhver blok, og uden det stopper programmet. Blindskrift gør det lettere at indøve en sikker rytme, så mønstre som if ... : eller def ... : bliver indlejret i muskelhukommelsen. På den måde undgår man små fejl og kan i stedet fokusere på logikken i koden.

if value > 0:
    print("Positiv")
elif value == 0:
    print("Nul")
else:
    print("Negativ")

Strenge og escape-sekvenser

I Python kan strenge indrammes med enkelte, dobbelte eller tredobbelte anførselstegn. De tredobbelte bruges ofte til docstrings eller multilinjede værdier. Raw strenge (raw strings) er praktiske til regulære udtryk og filstier. Fejl som manglende slut-anførselstegn eller et forkert backslash \ er almindelige. Med 10-fingersystemet og blindskrift bliver det naturligt at skrive anførselstegn og specialtegn, hvilket mindsker fejl og øger hastigheden.

print("Hej, verden")
print('Det virker også')
doc = """Dette er
en streng på flere linjer
til dokumentation."""
path = r"C:\Brugere\Anders"

Klasser og objektorienteret programmering

Python understøtter objektorienteret programmering, men mindre rigidt end Java. Klasser defineres med class, og instansmetoder modtager en eksplicit første parameter, som normalt kaldes self. Særlige metoder som __init__ eller __str__ er grundlæggende. Disse dobbelte underscores er lette at ramme forkert uden træning. Med blindskrift bliver det lettere at håndtere dem præcist. Konventionerne i Python betyder CamelCase for klassenavne og snake_case for metoder og attributter. Med 10-fingersystemet bliver underscores skrevet sikkert og hurtigt, så det er lettere at bruge navngivningskonventionerne konsekvent i koden.

class Customer:
    def __init__(self, name, balance=0):
        self.name = name
        self.balance = balance

    def __str__(self):
        return f"Kunde {self.name}, saldo {self.balance}"

Andre paradigmer

Python er ikke begrænset til objektorienteret programmering. Det understøtter også procedurel og funktionel programmering. Comprehensions kombinerer løkker og betingelser i en enkelt linje, hvilket kræver præcis brug af parenteser og operatorer. Med blindskrift bliver selv komplekse linjer som [x*x for x in numbers if x % 2 == 0] en rutinebevægelse. Det er et godt eksempel på, hvordan blindskrift understøtter ikke bare hastighed, men også korrekthed.

# Liste-komprehension
squares = [x*x for x in range(10) if x % 2 == 0]

Fejlhåndtering

Python håndterer fejl med try, except, finally og raise. Disse strukturer er kompakte, men kræver fuldstændig præcision. Et udeladt kolon eller forkert indryk ødelægger hele blokken. Med blindskrift kan man skrive sådanne konstruktioner automatisk, hvilket sparer tid og gør det lettere at koncentrere sig om, hvilke undtagelser der skal håndteres.

try:
    number = int("abc")
except ValueError:
    print("Ugyldigt tal")
finally:
    print("Færdig")

Moduler og biblioteker

En af Pythons største styrker er det enorme økosystem af biblioteker. Til næsten enhver opgave findes der allerede en løsning: Django og Flask til web, pandas og NumPy til dataanalyse, TensorFlow og PyTorch til maskinlæring. Det betyder ofte lange import-sætninger og kæder af metoder med underscores. Med blindskrift og 10-fingersystemet bliver det lettere at skrive disse uden at stoppe op for at lede efter symboler, og det holder arbejdsflowet intakt.

import pandas as pd
import numpy as np

df = pd.DataFrame({"id": [1, 2, 3], "score": [88, 95, 70]})
print(np.mean(df["score"]))

Dekoratorer og context managers

Dekoratorer bruger @ og skal skrives præcist, mens context managers starter med with og et kolon. Et manglende eller forkert placeret tegn kan give en syntaksfejl. Blindskrift gør disse strukturer mere flydende - når fingrene uden tøven skriver @logger eller with open(...), kan fokus forblive på programmets logik.

@staticmethod
def greet(name):
    print("Hej", name)

with open("fil.txt") as f:
    data = f.read()

Type hints og annoteringer

Siden Python 3.5 har sproget understøttet type hints. De bruges til at angive forventede typer for parametre og returværdier. Det gør koden lettere at forstå og hjælper værktøjer med at finde fejl. Hints kræver koloner og pile som -> str. De tilføjer flere symboler, men forbedrer også koden. Med blindskrift bliver det nemt at skrive disse præcist, så de føles som en naturlig del af programmeringen.

def average(values: list[int]) -> float:
    return sum(values) / len(values)

def greet(name: str, excited: bool = False) -> str:
    return f"Hej, {name}!" if excited else f"Hej, {name}"

Asynkron programmering

Python understøtter asynkrone funktioner med async og await. De giver mulighed for at skrive samtidige programmer på en måde, der ligner almindelige funktioner. Forkert brug af nøgleordene kan give syntaksfejl eller uventet adfærd under kørsel. Med blindskrift og 10-fingersystemet indøves en naturlig rytme, så async def og await glider ind i koden uden at sinke dig.

import asyncio

async def fetch_data():
    await asyncio.sleep(1)
    return "data"

async def main():
    result = await fetch_data()
    print(result)

asyncio.run(main())

Opsummering

Python er strengt omkring struktur, og indryk er en del af sprogets identitet. Python opdager syntaksfejl, før en fil udføres, mens andre fejl opstår under kørsel. Samtidig prioriterer det læsbarhed gennem konventioner som PEP 8 og pythoniske idiomer. Det understøtter flere paradigmer: objektorienteret, procedurelt, funktionelt og asynkront. Dets biblioteksøkosystem er enormt og kræver præcision i import-sætninger og kæder af metodekald. I alle disse områder giver blindskrift og 10-fingersystemet en praktisk fordel. Det reducerer fejl i indryk, understøtter korrekt brug af koloner, underscores og anførselstegn, og gør det lettere at bruge annoteringer og asynkron kode. For udviklere, der bruger mange timer dagligt på Python, er blindskrift ikke kun et spørgsmål om hastighed - det handler om præcision, fokus og at skrive læsbar kode uden hele tiden at lede efter tasterne.

Næste tekst
Næste lektion
Opgave Tilbage til test
python
Diagram Skjul