Python:
Omvandla ett datum till en sträng
Hur man gör:
Python gör det enkelt att konvertera datum till strängar. Använd metoden strftime
som finns tillgänglig på datum objekt. Så här gör du:
from datetime import datetime
# Hämta aktuellt datum och tid
now = datetime.now()
# Konvertera det till en sträng i formatet: Månad dag, År
date_string = now.strftime("%B %d, %Y")
print(date_string) # Utdata: Mars 29, 2023 (eller aktuellt datum)
# Format: ÅÅÅÅ-MM-DD
iso_date_string = now.strftime("%Y-%m-%d")
print(iso_date_string) # Utdata: 2023-03-29 (eller aktuellt datum)
Hur jag gör det
Så här får jag ett datum i ISO 8601 format med tidszonsinfo:
def datestamp() -> str:
"""
Aktuellt datum och tid med tidszon i ISO-format.
"""
return datetime.now().astimezone().isoformat()
Exempelutdata:
>>> datestamp()
'2024-04-04T01:50:04.169159-06:00'
Fördjupning
Historiskt har konvertering av datum till sträng varit en grundpelare i programmering på grund av behovet av att representera datum i ett läsbart format för människor.
Alternativ till strftime
inkluderar att använda isoformat
metoden för ISO 8601 format, eller tredjepartsbibliotek som arrow
och dateutil
som erbjuder mer flexibla tolknings- och formateringsalternativ.
Implementationen av strftime
står för “string format time” och har sina rötter i C programmering. Pythons strftime
tolkar formatkoder som %Y
för året och %m
för månaden, vilket möjliggör nästan oändlig anpassningsbarhet.
Se även
För att fördjupa dig i Pythons datum- och tidsfunktioner:
- Pythons officiella
datetime
dokumentation: https://docs.python.org/3/library/datetime.html - För de som är intresserade av en omfattande lista av
strftime
direktiv: https://strftime.org/ - För att utforska tredjeparts datum-/tidbibliotek:
- Arrow: https://arrow.readthedocs.io/en/latest/
- python-dateutil: https://dateutil.readthedocs.io/en/stable/