Python er ikke hovedspråket mitt — det er TypeScript og Go. Men når oppgaven handler om databehandling, rask prototyping eller scripting, er Python verktøyet jeg griper til. Det er språket der avstanden mellom idé og fungerende kode er kortest.
Når jeg bruker Python
I NEXT Utdanning bygget jeg datapipelines som prosesserer kursdata — henter fra eksterne kilder, transformerer formater, validerer innhold og laster inn i databasen. Python med biblioteker som pandas og requests gjør denne typen arbeid trivielt sammenlignet med å gjøre det samme i Go eller TypeScript.
Jeg bruker også Python med FastAPI når jeg trenger en API raskt — spesielt for tjenester som allerede lever i Python-økosystemet. Pydantic gir typesikkerhet, og den automatiske OpenAPI-dokumentasjonen sparer timer med manuell dokumentasjonsskriving.
For engangs-scripts — datamigering, filkonvertering, rapportgenerering — er Python uslåelig. Du skriver ti linjer og har et fungerende verktøy.
Datapipeline med generatorer
Generatorer er en av Pythons sterkeste sider for databehandling. De lar deg prosessere store datamengder uten å laste alt i minnet:
from typing import Generator
import json
def read_records(path: str) -> Generator[dict, None, None]:
with open(path) as f:
for line in f:
yield json.loads(line)
def validate(records: Generator[dict, None, None]) -> Generator[dict, None, None]:
for record in records:
if record.get("title") and record.get("content"):
yield record
def enrich(records: Generator[dict, None, None]) -> Generator[dict, None, None]:
for record in records:
record["word_count"] = len(record["content"].split())
yield record
raw = read_records("courses.jsonl")
valid = validate(raw)
enriched = enrich(valid)
for record in enriched:
process(record)Hver funksjon er et steg i pipelinen. Data flyter gjennom generatorer — kun én rad i minnet om gangen, uansett om filen er 100 eller 100 000 linjer. Stegene er komposerbare: du kan legge til filtrering, transformasjon eller logging ved å wrappe en ny generator rundt de eksisterende.
Oppsummering
Python er ikke det raskeste språket, og det er ikke det jeg bygger produksjonstjenester i. Men for datapipelines, scripting og prototyping er det vanskelig å argumentere mot. Riktig verktøy for riktig jobb.
Del av en serie: Denne guiden er en del av en samling tekniske innlegg om verktøyene og språkene jeg bruker.