Python - Tanggal dan Waktu
Seringkali dalam ilmu data kita membutuhkan analisis yang didasarkan pada nilai-nilai temporal. Python dapat menangani berbagai format tanggal dan waktu dengan baik. Itudatetime perpustakaan menyediakan metode dan fungsi yang diperlukan untuk menangani skenario berikut.
- Representasi Waktu Tanggal
- Tanggal Waktu Aritmatika
- Perbandingan Waktu Tanggal
Kami akan mempelajarinya satu per satu.
Representasi Waktu Tanggal
Tanggal dan berbagai bagiannya diwakili dengan menggunakan fungsi datetime yang berbeda. Juga, ada penentu format yang berperan dalam menampilkan bagian alfabet dari suatu tanggal seperti nama bulan atau hari minggu. Kode berikut menunjukkan tanggal hari ini dan berbagai bagian tanggal.
import datetime
print 'The Date Today is :', datetime.datetime.today()
date_today = datetime.date.today()
print date_today
print 'This Year :', date_today.year
print 'This Month :', date_today.month
print 'Month Name:',date_today.strftime('%B')
print 'This Week Day :', date_today.day
print 'Week Day Name:',date_today.strftime('%A')
Ketika kita mengeksekusi kode di atas, hasilnya adalah sebagai berikut.
The Date Today is : 2018-04-22 15:38:35.835000
2018-04-22
This Year : 2018
This Month : 4
Month Name: April
This Week Day : 22
Week Day Name: Sunday
Tanggal Waktu Aritmatika
Untuk kalkulasi yang melibatkan tanggal, kami menyimpan berbagai tanggal ke dalam variabel dan menerapkan operator matematika yang relevan ke variabel ini.
import datetime
#Capture the First Date
day1 = datetime.date(2018, 2, 12)
print 'day1:', day1.ctime()
# Capture the Second Date
day2 = datetime.date(2017, 8, 18)
print 'day2:', day2.ctime()
# Find the difference between the dates
print 'Number of Days:', day1-day2
date_today = datetime.date.today()
# Create a delta of Four Days
no_of_days = datetime.timedelta(days=4)
# Use Delta for Past Date
before_four_days = date_today - no_of_days
print 'Before Four Days:', before_four_days
# Use Delta for future Date
after_four_days = date_today + no_of_days
print 'After Four Days:', after_four_days
Ketika kita mengeksekusi kode di atas, hasilnya adalah sebagai berikut.
day1: Mon Feb 12 00:00:00 2018
day2: Fri Aug 18 00:00:00 2017
Number of Days: 178 days, 0:00:00
Before Four Days: 2018-04-18
After Four Days: 2018-04-26
Perbandingan Waktu Tanggal
Tanggal dan waktu dibandingkan menggunakan operator logika. Tetapi kita harus berhati-hati dalam membandingkan bagian yang tepat dari tanggal satu sama lain. Dalam contoh di bawah ini kami mengambil tanggal masa depan dan masa lalu dan membandingkannya menggunakan klausa if python bersama dengan operator logis.
import datetime
date_today = datetime.date.today()
print 'Today is: ', date_today
# Create a delta of Four Days
no_of_days = datetime.timedelta(days=4)
# Use Delta for Past Date
before_four_days = date_today - no_of_days
print 'Before Four Days:', before_four_days
after_four_days = date_today + no_of_days
date1 = datetime.date(2018,4,4)
print 'date1:',date1
if date1 == before_four_days :
print 'Same Dates'
if date_today > date1:
print 'Past Date'
if date1 < after_four_days:
print 'Future Date'
Ketika kita mengeksekusi kode di atas, hasilnya adalah sebagai berikut.
Today is: 2018-04-22
Before Four Days: 2018-04-18
date1: 2018-04-04
Past Date
Future Date