Datetime¶
Dates¶
Tanggal dalam Python bukanlah tipe data tersendiri, tetapi kita dapat mengimpor modul bernama datetime untuk bekerja dengan tanggal sebagai objek tanggal.
# Import the datetime module and display the current date:
import datetime
x = datetime.datetime.now()
print(x)
Date Output¶
Ketika kita mengeksekusi kode dari contoh di atas, hasilnya adalah:
2025-10-20 23:59:56.140609
Tanggal berisi tahun, bulan, hari, jam, menit, detik, dan mikrodetik.
Modul datetime memiliki banyak metode untuk mengembalikan informasi tentang objek tanggal.
Berikut beberapa contoh, Anda akan mempelajarinya lebih lanjut nanti di bab ini:
# Return the year and name of weekday:
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
Creating Date Objects¶
Untuk membuat tanggal, kita dapat menggunakan kelas datetime() (konstruktor) dari modul datetime.
Kelas datetime() membutuhkan tiga parameter untuk membuat tanggal: tahun, bulan, dan hari.
# Create a date object:
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)
Kelas datetime() juga mengambil parameter untuk waktu dan zona waktu (jam, menit, detik, mikrodetik, tzone), tetapi bersifat opsional, dan memiliki nilai default 0, (None untuk zona waktu).
The strftime() Method¶
Objek datetime memiliki metode untuk memformat objek tanggal menjadi string yang dapat dibaca.
Metode ini disebut strftime(), dan menggunakan satu parameter, format, untuk menentukan format string yang dikembalikan:
# Display the name of the month:
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B")) # June
Referensi semua kode format hukum:
Directive |
Description |
Example |
|---|---|---|
%a |
Weekday, short version |
Wed |
%A |
Weekday, full version |
Wednesday |
%w |
Weekday as a number 0-6, 0 is Sunday |
3 |
%d |
Day of month 01-31 |
31 |
%b |
Month name, short version |
Dec |
%B |
Month name, full version |
December |
%m |
Month as a number 01-12 |
12 |
%y |
Year, short version, without century |
18 |
%Y |
Year, full version |
2018 |
%H |
Hour 00-23 |
17 |
%I |
Hour 00-12 |
05 |
%p |
AM/PM |
PM |
%M |
Minute 00-59 |
41 |
%S |
Second 00-59 |
08 |
%f |
Microsecond 000000-999999 |
548513 |
%z |
UTC offset |
+0100 |
%Z |
Timezone |
CST |
%j |
Day number of year 001-366 |
365 |
%U |
Week number of year, Sunday as the first day of week, 00-53 |
52 |
%W |
Week number of year, Monday as the first day of week, 00-53 |
52 |
%c |
Local version of date and time |
Mon Dec 31 17:41:00 2018 |
%C |
Century |
20 |
%x |
Local version of date |
12/31/18 |
%X |
Local version of time |
17:41:00 |
%% |
A % character |
% |
%G |
ISO 8601 year |
2018 |
%u |
ISO 8601 weekday (1-7) |
1 |
%V |
ISO 8601 weeknumber (01-53) |
01 |