Daftar Referensi Python
Method datetime.astimezone() mengonversi aware datetime ke zona waktu lain sambil mempertahankan momen UTC yang sama.
Sintaks
datetime.astimezone(tz=None)
Parameter
| Parameter | Wajib? | Keterangan |
|---|---|---|
tz |
Tidak | Objek tzinfo tujuan; default zona lokal sistem |
Nilai balik: aware datetime pada zona tujuan.
Contoh
from datetime import datetime, timedelta, timezone
utc = datetime(2026, 7, 16, 5, 0, tzinfo=timezone.utc)
wib = timezone(timedelta(hours=7))
print(utc.astimezone(wib).isoformat())
Output:
2026-07-16T12:00:00+07:00
Contoh Lainnya
UTC+7 ke UTC
from datetime import datetime, timedelta, timezone
wib = timezone(timedelta(hours=7))
lokal = datetime(2026, 7, 16, 12, 0, tzinfo=wib)
print(lokal.astimezone(timezone.utc).isoformat())
Output:
2026-07-16T05:00:00+00:00
Momen tetap sama
from datetime import datetime, timedelta, timezone
utc = datetime(2026, 7, 16, 5, 0, tzinfo=timezone.utc)
wib = timezone(timedelta(hours=7))
lokal = utc.astimezone(wib)
print(utc.timestamp() == lokal.timestamp())
Output:
True
Zona tujuan yang sama
from datetime import datetime, timezone
dt = datetime(2026, 7, 16, tzinfo=timezone.utc)
print(dt.astimezone(timezone.utc) == dt)
Output:
True
Kesalahan Umum
- Untuk hasil konsisten, gunakan aware datetime dengan
tzinfo. replace(tzinfo=...)tidak sama dengan konversiastimezone().- Zona IANA seperti Asia/Jakarta sebaiknya memakai modul
zoneinfo.
Pelajari Lebih Lanjut
- Referensi: replace() · isoformat() · Modul datetime
- Buku Belajar Python untuk Pemula: Bab 11, Bab 16, dan Bab 17
