Contoh Program Menghitung Selisih Hari di Python – Panduan Lengkap
Ketika memilih menggunakan bahasa pemrograman Python, maka kita akan dapat dengan mudah membuat program menghitung selisih hari pada Python antara dua tanggal, tahun hingga bulan yang diberikan oleh pengguna. Agar bisa melakukan hal tersebut, kita dapat menggunakan beberapa library Python yang sudah tersedia secara gratis, seperti datetime dan timedelta.
Baca Juga Pembahasa Sebelumnya: Panduan Cara Membuat Program Jam Digital Python Lengkap
Ada beberapa contoh program menghitung selisih hari di Python semuanya bisa di simak dibawah ini
1. Program Menghitung Selisih Hari di Python Dengan Data Input User

Maksud dari Input user adalah jadi program meminta pengguna untuk memasukkan dua tanggal dalam format “YYYY-MM-DD”. Jadi data yang di masukan untuk selisih hari bisa di buat semau user tanpa harus merubah kode pada Program Python.
Kode lengkap contoh menghitung selisih hari di python
from datetime import datetime
# Minta pengguna memasukkan dua tanggal
tanggal1 = input("Masukkan tanggal pertama (YYYY-MM-DD): ")
tanggal2 = input("Masukkan tanggal kedua (YYYY-MM-DD): ")
# Ubah string menjadi objek tanggal
tanggal1 = datetime.strptime(tanggal1, "%Y-%m-%d").date()
tanggal2 = datetime.strptime(tanggal2, "%Y-%m-%d").date()
# Hitung selisih antara dua tanggal
selisih = abs(tanggal2 - tanggal1).days
# Tampilkan hasilnya
print("Selisih antara", tanggal1, "dan", tanggal2, "adalah", selisih, "hari.")
from datetime import datetime
: Mengimpor modul datetime yang digunakan untuk melakukan operasi pada objek datetime.tanggal1 = input("Masukkan tanggal pertama (YYYY-MM-DD): ")
: Meminta pengguna untuk memasukkan tanggal pertama dalam format “YYYY-MM-DD” dan menyimpannya ke dalam variabeltanggal1
sebagai string.tanggal2 = input("Masukkan tanggal kedua (YYYY-MM-DD): ")
: Meminta pengguna untuk memasukkan tanggal kedua dalam format “YYYY-MM-DD” dan menyimpannya ke dalam variabeltanggal2
sebagai string.tanggal1 = datetime.strptime(tanggal1, "%Y-%m-%d").date()
: Mengubah stringtanggal1
menjadi objek tanggal yang valid dengan menggunakan metodestrptime()
dari modul datetime. Format tanggal yang diterima adalah “YYYY-MM-DD”. Kemudian, hanya tanggal yang disimpan dalam objek datetime dengan menggunakan metode.date()
dan disimpan kembali ke dalam variabeltanggal1
.tanggal2 = datetime.strptime(tanggal2, "%Y-%m-%d").date()
: Mengubah stringtanggal2
menjadi objek tanggal yang valid dengan menggunakan metodestrptime()
dari modul datetime. Format tanggal yang diterima adalah “YYYY-MM-DD”. Kemudian, hanya tanggal yang disimpan dalam objek datetime dengan menggunakan metode.date()
dan disimpan kembali ke dalam variabeltanggal2
.selisih = abs(tanggal2 - tanggal1).days
: Menghitung selisih antara dua tanggal yang sudah diubah menjadi objek datetime dengan menggunakan operator-
. Karena selisih bisa saja bernilai negatif, maka dipanggil fungsiabs()
untuk mengambil nilai absolut. Untuk mengambil nilai selisih dalam satuan hari, dipanggil atribut.days
pada objek timedelta dan disimpan ke dalam variabelselisih
.print("Selisih antara", tanggal1, "dan", tanggal2, "adalah", selisih, "hari.")
: Menampilkan hasil perhitungan selisih antara dua tanggal dalam satuan hari dengan menggunakan fungsiprint()
. Pesan yang ditampilkan diawali dengan kata “Selisih antara”, diikuti oleh dua tanggal yang diinputkan oleh pengguna dan nilai selisih yang sudah dihitung.
Nah selanjutnya kita akan membahas Cara Membuat Program Menghitung Selisih Hari di Python Lengkap, tapi untuk yang ini jauh lebih sederhana tanpa input user. Jadi seluruh data langsung tertulis di kode program.
2. Contoh Program Menghitung Selisih Hari di Python Sederhana di Visual Studio Code

Contoh kode program di bawah ini bisa di praktekan di IDE Python, VSCode dll Jadi langsung saja simak kode lengkapnya berikut ini
from datetime import date
# masukkan tanggal pertama
tanggal_pertama = date(2023, 3, 1)
# masukkan tanggal kedua
tanggal_kedua = date(2023, 2, 27)
# hitung selisih hari
selisih_hari = tanggal_pertama - tanggal_kedua
# tampilkan hasil
print("Selisih hari:", selisih_hari.days)
Terkait penjelasa baris kode di atas, kami tidak akan menjelaskan secara detail, mengingat sudah di kasih komentar di baris kodenya. Dan sudah di jelaskan pada penjelasan contoh program yang pertama.
3. Program Menghitung Selisih Hari di Python Dengan GUI

Berikut contoh kode program lengkapnya
from tkinter import *
from datetime import datetime
# fungsi untuk menghitung selisih tanggal
def hitung_selisih():
tanggal1 = datetime.strptime(tanggal1_entry.get(), "%Y-%m-%d")
tanggal2 = datetime.strptime(tanggal2_entry.get(), "%Y-%m-%d")
selisih = abs((tanggal2 - tanggal1).days)
hasil_label.config(text="Selisih hari: " + str(selisih))
# membuat GUI dengan Tkinter
root = Tk()
root.title("Program Hitung Selisih Hari")
# membuat label untuk tanggal pertama
tanggal1_label = Label(root, text="Tanggal Pertama (YYYY-MM-DD): ")
tanggal1_label.grid(row=0, column=0, padx=5, pady=5)
# membuat input untuk tanggal pertama
tanggal1_entry = Entry(root)
tanggal1_entry.grid(row=0, column=1, padx=5, pady=5)
# membuat label untuk tanggal kedua
tanggal2_label = Label(root, text="Tanggal Kedua (YYYY-MM-DD): ")
tanggal2_label.grid(row=1, column=0, padx=5, pady=5)
# membuat input untuk tanggal kedua
tanggal2_entry = Entry(root)
tanggal2_entry.grid(row=1, column=1, padx=5, pady=5)
# membuat tombol untuk menghitung selisih
hitung_button = Button(root, text="Hitung Selisih", command=hitung_selisih)
hitung_button.grid(row=2, column=0, columnspan=2, padx=5, pady=5)
# membuat label untuk hasil
hasil_label = Label(root, text="")
hasil_label.grid(row=3, column=0, columnspan=2, padx=5, pady=5)
# menjalankan GUI
root.mainloop()
Semoga bermanfaat Tutorial dan Contoh Program Menghitung Selisih Hari di Python Lengkap dengan fungsi kode setiap barisnya. Sampai jumpa di pembahasa lainnya