Skip to main content
  1. Belajar/
  2. Python Fundamental/
  3. 13. Mini Proyek 2: Membuat Aplikasi Todo List/

Membangun Fungsi Utama

6 mins· loading · loading ·
Mini Proyek 2 Aplikasi Todo List - This article is part of a series.
Part 3: This Article

Dalam tahap ini, kita akan mulai membangun fungsi-fungsi utama yang akan membentuk inti dari aplikasi Pencatat Tugas kita. Fungsi-fungsi ini akan bertanggung jawab untuk menambahkan, menampilkan, dan menghapus tugas dalam daftar.

a. Menambah Tugas Baru
#

Langkah pertama adalah membuat fungsi untuk menambahkan tugas (task). Fungsi ini akan memungkinkan pengguna untuk menambahkan tugas baru ke dalam daftar. Setiap tugas baru akan disimpan dalam struktur data yang akan kita simpan menggunakan pickle. Buat fungsi berikut pada file todo.py:

# todo.py

import pickle
import os

data_path = 'data/tasks.pkl'

def tambah_tugas(tugas, daftar_tugas):
    """
    Fungsi untuk menambahkan tugas ke daftar.
    """
    daftar_tugas.append(tugas)
    simpan_data(daftar_tugas)
    print(f"Tugas '{tugas}' ditambahkan.")

def simpan_data(daftar_tugas):
    """
    Fungsi untuk menyimpan data ke file menggunakan pickle.
    """
    with open(data_path, 'wb') as file:
        pickle.dump(daftar_tugas, file)

def baca_data():
    """
    Fungsi untuk membaca data dari file menggunakan pickle.
    Jika file tidak ada, kembalikan daftar kosong.
    """
    if os.path.exists(data_path):
        with open(data_path, 'rb') as file:
            return pickle.load(file)
    else:
        return []

# Menggunakan fungsi baca_data untuk mendapatkan daftar tugas yang ada
daftar_tugas = baca_data()

Penjelasan kode:

  • tambah_tugas: Fungsi ini menambahkan tugas baru ke dalam daftar dan menyimpannya.
  • simpan_data: Fungsi ini menyimpan data ke dalam file menggunakan pickle.
  • baca_data: Fungsi ini membaca data dari file menggunakan pickle.

Jika file tidak ada, kembalikan daftar kosong.

b. Menampilkan Daftar Tugas
#

Berikutnya, kita akan membuat fungsi untuk menampilkan daftar tugas yang ada.

# todo.py

def tampilkan_tugas(daftar_tugas):
    """
    Fungsi untuk menampilkan daftar tugas.
    """
    if daftar_tugas:
        print("Daftar Tugas:")
        for idx, tugas in enumerate(daftar_tugas, start=1):
            print(f"{idx}. {tugas}")
    else:
        print("Tidak ada tugas saat ini.")

Penjelasan kode:

  • tampilkan_tugas: Fungsi ini menampilkan daftar tugas ke terminal. Jika tidak ada tugas, pesan “Tidak ada tugas saat ini” akan ditampilkan.

c. Menghapus Tugas
#

Terakhir, kita akan membuat fungsi untuk menghapus tugas berdasarkan indeks.

# todo.py

def hapus_tugas(index, daftar_tugas):
    """
    Fungsi untuk menghapus tugas berdasarkan indeks.
    """
    if 1 <= index <= len(daftar_tugas):
        tugas_terhapus = daftar_tugas.pop(index - 1)
        simpan_data(daftar_tugas)
        print(f"Tugas '{tugas_terhapus}' dihapus.")
    else:
        print("Indeks tugas tidak valid.")

Penjelasan kode:

  • hapus_tugas: Fungsi ini menghapus tugas dari daftar berdasarkan indeks yang diberikan dan menyimpan perubahan ke dalam file.

Dengan adanya fungsi-fungsi ini, kita telah membentuk dasar dari aplikasi Pencatat Tugas kita. Pada tahap berikutnya, kita akan menyusun logika untuk menjalankan aplikasi ini melalui terminal dan berinteraksi dengan pengguna.

Mini Proyek 2 Aplikasi Todo List - This article is part of a series.
Part 3: This Article