Berikut adalah penjelasan lengkap untuk Fungsi & Modularisasi Kode dalam Python.
✅ 4. Fungsi & Modularisasi Kode
1️⃣ Cara Membuat Fungsi dengan def
🔹 Apa Itu Fungsi?
Fungsi adalah blok kode yang dirancang untuk melakukan tugas tertentu. Dengan fungsi, kita bisa:
✔ Menghindari pengulangan kode
✔ Membuat kode lebih terstruktur
✔ Mempermudah debugging
🔹 Struktur Dasar Fungsi
def nama_fungsi():
# Blok kode fungsi
📌 Contoh Fungsi Tanpa Parameter
def sapa():
print("Halo! Selamat datang di Python.")
sapa() # Memanggil fungsi
📌 Output:
Halo! Selamat datang di Python.
2️⃣ Parameter & Return Value
🔹 Fungsi dengan Parameter
Parameter adalah nilai yang dikirim ke dalam fungsi untuk diproses.
📌 Contoh Fungsi dengan Parameter
def sapa(nama):
print(f"Halo, {nama}! Selamat datang.")
sapa("Alice")
sapa("Budi")
📌 Output:
Halo, Alice! Selamat datang.
Halo, Budi! Selamat datang.
🔹 Fungsi dengan Banyak Parameter
Kita bisa menggunakan lebih dari satu parameter dalam fungsi.
📌 Contoh Fungsi dengan 2 Parameter
def tambah(a, b):
hasil = a + b
print(f"Hasil penjumlahan {a} + {b} = {hasil}")
tambah(5, 3) # Output: Hasil penjumlahan 5 + 3 = 8
🔹 Fungsi dengan return
return digunakan untuk mengembalikan nilai dari fungsi.
📌 Contoh Fungsi dengan return
def luas_persegi(sisi):
return sisi * sisi
hasil = luas_persegi(4)
print("Luas persegi:", hasil) # Output: Luas persegi: 16
📌 Penjelasan:
- Fungsi
luas_persegi()menerima parametersisi - Mengembalikan hasil perhitungan
sisi * sisi - Nilai dikembalikan ke variabel
hasil, lalu ditampilkan
🔹 Fungsi dengan Default Parameter
Kita bisa memberikan nilai default pada parameter sehingga jika tidak diberikan nilai, parameter akan menggunakan nilai default.
📌 Contoh Default Parameter
def sapa(nama="User"):
print(f"Halo, {nama}!")
sapa() # Output: Halo, User!
sapa("Rina") # Output: Halo, Rina!
📌 Penjelasan:
- Jika tidak ada input, nama akan bernilai "User"
- Jika ada input, nama akan memakai input tersebut
🔹 Fungsi dengan Parameter Tak Terbatas (*args dan **kwargs)
📌 *args (Argumen Tidak Terbatas dalam Bentuk Tuple)
def jumlahkan(*angka):
return sum(angka)
print(jumlahkan(1, 2, 3, 4)) # Output: 10
📌 Penjelasan:
*argsmemungkinkan kita memasukkan banyak angka tanpa batas
📌 **kwargs (Parameter Tak Terbatas dalam Bentuk Dictionary)
def profil(**data):
print("Nama:", data["nama"])
print("Umur:", data["umur"])
profil(nama="Dina", umur=25)
📌 Penjelasan:
**kwargsdigunakan untuk menerima parameter dengan nama (key-value)
3️⃣ Penggunaan Modul (import)
Modul adalah file Python yang berisi fungsi dan variabel yang bisa digunakan di program lain.
🔹 Menggunakan Modul Bawaan (import)
Python memiliki banyak modul bawaan seperti math, random, datetime, dll.
📌 Modul math (Fungsi Matematika)
import math
print(math.sqrt(25)) # Akar kuadrat (Output: 5.0)
print(math.factorial(5)) # Faktorial (Output: 120)
print(math.pi) # Konstanta π (Output: 3.141592653589793)
Fungsi dalam math
| Fungsi | Deskripsi |
|---|---|
math.sqrt(x) |
Akar kuadrat |
math.factorial(x) |
Faktorial |
math.pow(x, y) |
Pangkat |
math.pi |
Konstanta π |
math.sin(x), math.cos(x) |
Trigonometri |
📌 Modul random (Menghasilkan Angka Acak)
import random
print(random.randint(1, 10)) # Angka acak antara 1 dan 10
print(random.choice(["apel", "mangga", "jeruk"])) # Pilih acak dari list
Fungsi dalam random
| Fungsi | Deskripsi |
|---|---|
random.randint(a, b) |
Menghasilkan angka acak antara a dan b |
random.choice(list) |
Memilih elemen acak dari list |
random.shuffle(list) |
Mengacak urutan elemen list |
📌 Membuat & Menggunakan Modul Sendiri
Kita bisa membuat modul sendiri dan menggunakannya di program lain.
1️⃣ Buat file baru bernama modul_saya.py
def sapa(nama):
print(f"Halo, {nama}! Selamat datang.")
2️⃣ Gunakan modul di program utama
import modul_saya
modul_saya.sapa("Dina")
📌 Output:
Halo, Dina! Selamat datang.
📌 Kesimpulan
✅ Fungsi (def) digunakan untuk membuat kode lebih modular dan reusable
✅ Parameter & return memungkinkan fungsi menerima input dan mengembalikan hasil
✅ Modul (import) digunakan untuk memanfaatkan fungsi bawaan Python atau membuat kode sendiri agar lebih rapi
🔥 Selanjutnya, kita akan belajar tentang Struktur Data (List, Tuple, Dictionary, Set). Mau aku buatkan penjelasannya juga? 🚀
Tidak ada komentar:
Posting Komentar