Cara menggunakan format tanggal di python

Setiap bahasa pemrograman memiliki cara untuk menangani date and time (tanggal dan waktu) termasuk juga Python. Dalam ilmu komputer dan pemrograman komputer, sistem datetime adalah untuk mewakili gagasan sistem komputer tentang berlalunya waktu. Dalam pengertian ini, “time” juga mencakup berlalunya hari pada kalender.

Program Python date time dapat menangani tanggal dan waktu dalam beberapa cara. Mengonversi antara format tanggal adalah tugas umum untuk komputer. Modul datetime Python membantu melacak tanggal dan waktu.

Table of Contents

Tick, untuk Menangani Time dan Date pada Python

Interval waktu adalah angka floating-point dalam satuan detik. Instan tertentu dalam waktu dinyatakan dalam detik sejak pukul 00:00:00 1 Januari 1970 (epoch). Modul datetime populer yang tersedia di dalam Bahasa pemrograman Python berguna untuk menyediakan fungsi dalam bekerja dengan datetime, serta untuk mengubah antar representasi. Fungsi time.time() mengembalikan waktu sistem saat ini dalam tick sejak pukul 00:00:00 1 Januari 1970(Epoch).

Contoh kode:

#!/usr/bin/python
import time;  # This is required to include time module.

ticks = time.time()
print "Number of ticks since 12:00am, January 1, 1970:", ticks

Kode itu akan membuat hasil sebagai berikut :

Number of ticks since 12:00am, January 1, 1970: 7186862.73399

Dengan tick ini, aritmatika tanggal atau waktu dapat lebih mudah dilakukan. Namun, tanggal epoch tidak dapat direpresentasikan dalam bentuk ini. Tanggal di masa depan yang jauh juga tidak dapat direpresentasikan dengan cara ini – titik batasnya sekitar tahun 2038 untuk UNIX dan Windows.

Apa itu TimeTuple?

Banyak fungsi Python date time yang digunakan untuk menangani waktu sebagai tupel dari 9 angka. Hal tersebut seperti yang ditunjukkan di bawah ini:

Dengan tick ini, aritmatika tanggal atau waktu dapat lebih mudah dilakukan. Namun, tanggal epoch tidak dapat direpresentasikan dalam bentuk ini. Tanggal di masa depan yang jauh juga tidak dapat direpresentasikan dengan cara ini – titik batasnya sekitar tahun 2038 untuk UNIX dan Windows.

IndexBidangNilai04-digit tahun20211Bulan1 ke 122Hari1 ke 313Jam0 ke 234Menit0 ke 595Detik0 ke 61 (60 atau 61 adalah detik kabisat)6Hari dalam Minggu0 ke 6 (0 adalah Senin)7Hari dalam tahun1 ke 366 (Tahun kabisat)8Penghematan siang hari-1, 0, 1, -1 mempunyai arti bahwa library menentukan DST

 

Tuple di atas setara dengan struktur struct_time. Struktur Python Date Time ini memiliki atribut seperti berikut:

IndexAtributNilai0tm_year20211tm_mon1 ke 122tm_mday1 ke 313tm_hour0 ke 234tm_min0 ke 595tm_sec0 ke 61 (60 atau 61 adalah detik kabisat)6tm_wday0 ke 6 (0 adalah Senin)7tm_yday1 ke 366 (Tahun kabisat)8tm_isdst-1, 0, 1, -1 yang berarti library menentukan DST

 

Artikel Terkait  Tutorial Python 5 : Pengenalan Operasi Python

Mendapatkan waktu saat ini

Untuk menerjemahkan waktu instan dari detik sejak floating-point value epoch menjadi tupel waktu. Anda bisa teruskan floating-point value ke suatu fungsi (misalnya, waktu lokal) yang mengembalikan tupel waktu dengan kesembilan item yang valid.

#!/usr/bin/python
import time;

localtime = time.localtime(time.time())
print "Local current time :", localtime

Ini akan menghasilkan hasil berikut, yang dapat diformat dalam bentuk lain yang dapat dilihat:

Local current time : time.struct_time(tm_year=2013, tm_mon=7, 
tm_mday=17, tm_hour=21, tm_min=26, tm_sec=3, tm_wday=2, tm_yday=198, tm_isdst=0)

Mendapatkan waktu yang diformat

Anda dapat memformat kapan saja sesuai kebutuhan Anda, tetapi metode sederhana untuk mendapatkan waktu dalam format rule dapat dibaca adalah asctime():

#!/usr/bin/python
import time;

localtime = time.asctime( time.localtime(time.time()) )
print "Local current time :", localtime

Kode ini akan memberikan hasil sebagai berikut:

Local current time : Tue Des 21 10:17:09 2021

Mendapatkan kalender selama sebulan

Modul kalender dalam Python memberikan berbagai metode untuk melakukan sesuatu terhadap penanggalan tahunan dan bulanan. Di sini, kami mencetak kalender untuk bulan tertentu ( Jan 2022 )

Pada artikel ini akan disajikan teknik manipulasi data tanggal dan waktu menggunakan modul datetime (pada standard library) yang disediakan python. Keberadaan modul ini sangat mempermudah kita saat harus bekerja dengan tanggal dan waktu dalam kode program kita.

Berikut beberapa contoh cara menggunakan modul tersebut untuk berbagai keperluan yang sering kita jumpai dalam pemrograman.

Mendapatkan tanggal saat ini

import datetime

tanggal_saat_ini = datetime.date.today() 
print(tanggal_saat_ini) # tanggal pada hari ini akan ditampilkan di layar

Mendapatkan tanggal dan waktu saat ini

import datetime

saat_ini = datetime.datetime.now() 
print(saat_ini) # waktu saat ini akan ditampilkan di layar

Mengisi variabel dengan tanggal tertentu

from datetime import date

tgl = date(2019, 7, 31) # tahun, bulan, tanggal
print(tgl)

Catatan: tgl pada contoh di atas bertipe date object

Mengakses tahun, bulan, tanggal dari sebuah date object

from datetime import date

hari_ini = date.today() 
print("Tahun ini:", hari_ini.year)
print("Bulan ini:", hari_ini.month)
print("Tanggal hari ini:", hari_ini.day)

Mengisi variabel dengan waktu tertentu

from datetime import time
cth_waktu = time(20, 31, 7) # parameter: jam, menit,detik
print(cth_waktu)

cth_waktu = time(hour = 8, second = 56) # 
print(cth_waktu)

cth_waktu = time(1, 11, 27, 991727) # parameter: jam, menit,detik, microsecond
print(cth_waktu)

catatan: cth_waktu pada contoh di atas bertipe time object

Mengakses jam, menit, detik, dan microsecond dari sebuah time object

from datetime import time

a = time(5, 15, 5, 728172)

print("jam =", a.hour)
print("menit =", a.minute)
print("detik =", a.second)
print("microsecond =", a.microsecond)

Menghitung selisih antara dua tanggal

from datetime import date

tgl1 = date(year = 1945, month = 8, day = 17)
tgl2 = date.today()
selisih = tgl2 - tgl1
print('Indonesia sudah merdeka selama =', selisih.days, ' hari')

catatan: selisih pada contoh di atas bertipe timedelta

Format tanggal dan waktu dengan strftime

from datetime import datetime

saat_ini = datetime.now()
jam = saat_ini.strftime('%H:%M:%S')
print('Jam:', jam)

tgl = saat_ini.strftime('%d/%m/%Y') # format dd/mm/YY
print('Tanggal:', tgl)

tgl_jam = saat_ini.strftime("%d/%m/%Y, %H:%M:%S") # format dd/mm/YY H:M:S 
print('tanggal dan jam: ', tgl_jam)

Konversi datetime dari dan ke format str(teks)

Untuk melakukan konversi sebuah nilai datetime dari dan ke nilai str (teks), modul datetime menyediakan fungsi strptime() dan strftime(). Contoh cara penggunaannya dibahas secara detail pada artikel ini.