Python:
Päivämäärän muuntaminen merkkijonoksi
Kuinka:
Python tekee päivämäärien muuntamisen merkkijonoiksi helpoksi. Käytä strftime
-metodia, joka on saatavilla date -objekteille. Tässä miten:
from datetime import datetime
# Hae nykyinen päivä ja aika
now = datetime.now()
# Muunna se merkkijonoksi muodossa: Kuukausi päivä, Vuosi
date_string = now.strftime("%B %d, %Y")
print(date_string) # Tuloste: maaliskuu 29, 2023 (tai nykyinen päivä)
# Muoto: VVVV-KK-PP
iso_date_string = now.strftime("%Y-%m-%d")
print(iso_date_string) # Tuloste: 2023-03-29 (tai nykyinen päivä)
Kuinka minä teen sen
Näin saan ISO 8601 -muotoisen päivämäärän aikavyöhyketiedon kanssa:
def datestamp() -> str:
"""
Nykyinen päivämäärä ja aika aikavyöhykkeellä ISO-muodossa.
"""
return datetime.now().astimezone().isoformat()
Esimerkkituloste:
>>> datestamp()
'2024-04-04T01:50:04.169159-06:00'
Syväsukellus
Historiallisesti päivämäärän merkkijonomuunnos on ollut ohjelmoinnissa vakio tarpeen mukaan esittää päivämääriä ihmisen luettavassa muodossa.
Vaihtoehtoja strftime
-metodille ovat esimerkiksi isoformat
-metodin käyttäminen ISO 8601 -muodon saavuttamiseen, tai kolmannen osapuolen kirjastot kuten arrow
ja dateutil
, jotka tarjoavat joustavampia jäsentämis- ja muotoiluvaihtoehtoja.
Toteutuksen kannalta, strftime
tarkoittaa “merkkijonoformaattiaika” ja sillä on juurensa C-ohjelmoinnissa. Pythonin strftime
tulkitsee muotokoodeja kuten %Y
vuodelle ja %m
kuukaudelle, mahdollistaen lähes rajattoman muokattavuuden.
Katso myös
Sukeltaaksesi syvemmälle Pythonin päivämäärä- ja aikatoimintoihin:
- Pythonin virallinen
datetime
dokumentaatio: https://docs.python.org/3/library/datetime.html - Niille, jotka ovat kiinnostuneita kattavasta listasta
strftime
-direktiivejä: https://strftime.org/ - Tutustuaksesi kolmannen osapuolen päivämäärä-/aikakirjastoihin:
- Arrow: https://arrow.readthedocs.io/en/latest/
- python-dateutil: https://dateutil.readthedocs.io/en/stable/