Python Academy · leksjon

Formatering og tolking

Bruk strftime og strptime

Leksjon 3 av 413 trinn

Formatering og tolking er en gratis leksjon i Python Academy på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Python Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Python Academy inneholder totalt 4 leksjoner.

Hvorfor formatere og parse?

Datamaskiner lagrer datoer som objekter, men mennesker leser dem som tekst. Formatering gjør et datetime-objekt om til en streng, og parsing gjør en streng om til et datetime-objekt igjen.

  • strftime = string FROM time (formatering).
  • strptime = string PARSE time (parsing).
from datetime import datetime
now = datetime(2026, 5, 30, 14, 5)
print(now)

Din første strftime

Kall .strftime(format) på et datetime-objekt. Formatkoder begynner med %: %Y er et firesifret år, %m er måneden, og %d er dagen.

from datetime import datetime
d = datetime(2026, 5, 30)
print(d.strftime('%Y-%m-%d'))

Formatere tidsdelen

Tidskoder: %H er time (00-23), %M er minutt, og %S er sekund. Du kan blande dem med bokstavelig tekst slik du ønsker.

from datetime import datetime
d = datetime(2026, 5, 30, 9, 7, 3)
print(d.strftime('%H:%M:%S'))

Leservennlige navn

Noen koder lager navn: %A er ukedagens fulle navn, %B er månedens fulle navn, og %b er den forkortede måneden.

from datetime import datetime
d = datetime(2026, 5, 30)
print(d.strftime('%A, %B %d, %Y'))

12-timersklokke og AM/PM

Bruk %I for time i 12-timersformatet og %p for AM eller PM. Dette er vanlig i visninger rettet mot brukere.

from datetime import datetime
d = datetime(2026, 5, 30, 14, 30)
print(d.strftime('%I:%M %p'))

Parse med strptime

datetime.strptime(text, format) leser en streng inn i et datetime-objekt. Formatet må samsvare nøyaktig med teksten, kode for kode.

from datetime import datetime
text = '2026-05-30'
d = datetime.strptime(text, '%Y-%m-%d')
print(d)
print(type(d))

Parse dato og klokkeslett sammen

Ta med tidskoder i formatet for å parse et fullstendig tidsstempel. Alle skilletegn (bindestreker, mellomrom, kolon) i teksten må også være med i mønsteret.

from datetime import datetime
text = '30/05/2026 14:05'
d = datetime.strptime(text, '%d/%m/%Y %H:%M')
print(d.year, d.hour, d.minute)

Tur-retur: parse, og formater deretter

En vanlig arbeidsflyt er å parse innkommende tekst, utføre litt logikk og deretter formatere den på nytt for utskrift – også i et annet oppsett.

from datetime import datetime
raw = '2026-05-30'
d = datetime.strptime(raw, '%Y-%m-%d')
pretty = d.strftime('%B %d, %Y')
print(pretty)

Snarvei for ISO-format

.isoformat() produserer standardstrengen i ISO 8601, og datetime.fromisoformat() leser den tilbake uten at du trenger formatkoder.

from datetime import datetime
d = datetime(2026, 5, 30, 14, 5)
s = d.isoformat()
print(s)
back = datetime.fromisoformat(s)
print(back == d)

Håndtere parse-feil

Hvis teksten ikke samsvarer med formatet, utløser strptime en ValueError. Pakk kallet inn i try/except når inndata kan være feilformatert.

from datetime import datetime
try:
    datetime.strptime('not-a-date', '%Y-%m-%d')
except ValueError as e:
    print('Could not parse:', e)

Dag i året og mer

Flere koder: %j er dagen i året (001-366), og %w er ukedagen som et tall (0=søndag). Disse er nyttige i rapporter.

from datetime import datetime
d = datetime(2026, 5, 30)
print('Day of year:', d.strftime('%j'))

Hurtigsjekk

Du har strengen '2026-05-30'. Hvilket kall konverterer den til et datetime-objekt?

Oppsummering: Formatering og parsing

Husk:

  • strftime(fmt) gjør et datetime-objekt om TIL en streng.
  • strptime(text, fmt) gjør en streng om TIL et datetime-objekt.
  • Vanlige koder: %Y %m %d for datoer, %H %M %S for klokkeslett, %A %B for navn.
  • isoformat() og fromisoformat() håndterer ISO-standarden automatisk.
from datetime import datetime
d = datetime.strptime('2026-05-30 14:05', '%Y-%m-%d %H:%M')
print(d.strftime('%A at %I:%M %p'))
Gratis å komme i gang

Lær deg Python med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
76
Leksjoner
320

Ofte stilte spørsmål

Er leksjonen «Formatering og tolking» gratis?

Ja – hele teksten i «Formatering og tolking» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Python Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Python Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Formatering og tolking»?

Bruk strftime og strptime Du øver på Python Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Python Academy?

Ingen tidligere erfaring er nødvendig. Python Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «Formatering og tolking»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Python Academy-leksjonen?

Ja. Alle Python Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. date, time, datetime
  2. Timedelta og aritmetikk
  3. Formatering og tolking
  4. Tidssoner med zoneinfo
← Tilbake til Python Academy