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

Contoh Outputnya

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.")
  1. from datetime import datetime: Mengimpor modul datetime yang digunakan untuk melakukan operasi pada objek datetime.
  2. tanggal1 = input("Masukkan tanggal pertama (YYYY-MM-DD): "): Meminta pengguna untuk memasukkan tanggal pertama dalam format “YYYY-MM-DD” dan menyimpannya ke dalam variabel tanggal1 sebagai string.
  3. tanggal2 = input("Masukkan tanggal kedua (YYYY-MM-DD): "): Meminta pengguna untuk memasukkan tanggal kedua dalam format “YYYY-MM-DD” dan menyimpannya ke dalam variabel tanggal2 sebagai string.
  4. tanggal1 = datetime.strptime(tanggal1, "%Y-%m-%d").date(): Mengubah string tanggal1 menjadi objek tanggal yang valid dengan menggunakan metode strptime() 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 variabel tanggal1.
  5. tanggal2 = datetime.strptime(tanggal2, "%Y-%m-%d").date(): Mengubah string tanggal2 menjadi objek tanggal yang valid dengan menggunakan metode strptime() 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 variabel tanggal2.
  6. 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 fungsi abs() untuk mengambil nilai absolut. Untuk mengambil nilai selisih dalam satuan hari, dipanggil atribut .days pada objek timedelta dan disimpan ke dalam variabel selisih.
  7. print("Selisih antara", tanggal1, "dan", tanggal2, "adalah", selisih, "hari."): Menampilkan hasil perhitungan selisih antara dua tanggal dalam satuan hari dengan menggunakan fungsi print(). 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

Hasil Output

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

Hasil Output

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

Artikel Terkait

Leave a Comment