Python datetime adalah modul dalam pemrograman Python untuk bekerja dengan tanggal dan waktu secara efisien.
Salah satu kegunaan utama dari modul datetime adalah kemampuannya membangun objek datetime yang dapat menyimpan informasi tanggal dan waktu secara bersamaan. Objek ini membantu saat kamu perlu melakukan perbandingan antar tanggal, atau ketika kamu ingin menyaring data dalam rentang waktu tertentu.
Misalnya, kamu ingin mengetahui tren penjualan dalam satu bulan terakhir atau mengukur efektivitas sebuah campaign marketing.
Artikel ini akan membawa kamu menjelajahi kemampuan modul datetime, mulai dari pembuatan objek tanggal dan waktu, manipulasi interval waktu, sampai penyesuaian zona waktu yang kompleks. Yuk, simak!
Jenis-jenis Class dalam Python datetime
Modul datetime di Python menyediakan berbagai class yang dirancang untuk memenuhi kebutuhan manipulasi tanggal dan waktu. Berikut lima class utama dalam modul ini:
Class date
Class ini digunakan untuk merepresentasikan tanggal dalam kalender. Kamu dapat membuat objek date dengan menentukan tahun, bulan, dan hari. Fungsi-fungsi dalam class date berguna untuk melakukan operasi seperti mendapatkan hari dalam seminggu, atau menghitung selisih hari antara dua tanggal.
Contoh penggunaannya adalah menentukan tanggal jatuh tempo atau tanggal peluncuran produk.
Class time
Berbeda dengan date, class time berfokus pada waktu dalam sehari, tanpa informasi tanggal. Class ini menyimpan jam, menit, detik, dan mikrodetik. Ini berguna ketika kamu perlu mengatur jadwal atau mengukur waktu yang dibutuhkan untuk menyelesaikan suatu tugas, tanpa perlu terkait dengan tanggal tertentu.
Class datetime
Menggabungkan fungsi dari date dan time, class datetime membantu dalam manipulasi tanggal dan waktu secara bersamaan. Ini adalah class yang paling sering digunakan dalam analisis data, karena biasanya data yang kamu kerjakan mengandung timestamp yang perlu diolah.
Class timedelta
Class timedelta sangat penting dalam perhitungan perbedaan waktu. Class ini dipakai untuk merepresentasikan durasi, perbedaan antara dua tanggal atau waktu. Misalnya, timedelta bisa digunakan untuk menambah atau mengurangi hari, minggu, atau bulan dari sebuah objek datetime, memungkinkan analisis tren jangka panjang atau perencanaan ke depan.
Cara dan Contoh Menggunakan Tiap-tiap Class
Selanjutnya, mari kita pelajari cara menggunakan masing-masing class dalam modul datetime Python. Misalnya kita memiliki dataset yang merepresentasikan log aktivitas harian:
Cara menggunakan class date
Untuk menggunakan class date, kita perlu mengimpor class tersebut dari modul datetime, kemudian membuat objek date dengan menentukan tahun, bulan, dan hari.
Contohnya, kita ingin mengetahui hari dalam seminggu untuk setiap tanggal log.
from datetime import date
# Dataset
data = [
{"tanggal": "2023-06-01", "hari": date(2023, 6, 1).strftime('%A')},
{"tanggal": "2023-06-02", "hari": date(2023, 6, 2).strftime('%A')},
{"tanggal": "2023-06-03", "hari": date(2023, 6, 3).strftime('%A')}
]
# Output
for item in data:
print(f"Tanggal {item['tanggal']} adalah hari {item['hari']}")Cara menggunakan class time
Class time dipakai untuk menyimpan waktu tanpa informasi tanggal. Objek time dibuat dengan menyertakan jam, menit, detik.
Sebagai contoh, kita ingin menyimpan waktu "Jam Masuk" dari dataset.
from datetime import time
# Dataset
waktu_masuk = [
time(8, 0),
time(8, 30),
time(9, 0)
]
# Output
for waktu in waktu_masuk:
print(f"Jam masuk: {waktu.strftime('%H:%M')}")Cara menggunakan class datetime
Misalnya, gabungkan tanggal dan "Jam Masuk" untuk membuat timestamp lengkap.