Dalam pemrograman Python, modul dan paket merupakan cara untuk mengorganisasi kode agar lebih rapi, terstruktur, dan mudah digunakan kembali (reusable). Ketika program yang dikembangkan semakin besar, membaginya ke dalam modul dan paket yang lebih kecil akan membantu menjaga keterbacaan dan memudahkan pengelolaan.
Modul adalah sebuah berkas (file) Python dengan ekstensi .py yang berisi kumpulan variabel, fungsi, atau kelas yang dapat digunakan di program lain. Dengan kata lain, modul adalah satuan terkecil dari program Python yang bisa di-import.
Misalkan kita membuat file bernama matematika.py berisi fungsi sederhana:
# File: matematika.py
def tambah(a, b):
return a + b
def kurang(a, b):
return a - b
def kali(a, b):
return a * b
def bagi(a, b):
return a / b
File ini adalah modul Python yang dapat digunakan oleh file lain.
importUntuk menggunakan fungsi dalam modul matematika.py, buat file baru bernama main.py di folder yang sama:
# File: main.py
import matematika
print(matematika.tambah(5, 3))
print(matematika.kali(4, 2))
Ketika dijalankan, hasilnya:
8
8
Python mencari file matematika.py di lokasi yang sama dengan main.py dan mengimpornya sebagai modul.
Jika hanya ingin menggunakan fungsi tertentu, gunakan sintaks:
from matematika import tambah, kali
print(tambah(10, 5))
print(kali(3, 3))
Anda juga dapat memberikan alias agar lebih ringkas:
import matematika as m
print(m.tambah(2, 7))
Python sudah menyediakan banyak modul bawaan yang sangat berguna. Beberapa contohnya yaitu:
| Modul | Fungsi Umum |
|---|---|
math |
operasi matematika lanjutan (sin, cos, sqrt, dsb.) |
random |
menghasilkan angka acak |
datetime |
bekerja dengan tanggal dan waktu |
os |
berinteraksi dengan sistem operasi |
sys |
mengakses informasi tentang interpreter Python |
Contoh penggunaannya:
import math
print(math.sqrt(25)) # akar kuadrat
print(math.pi) # konstanta π
Paket (package) adalah kumpulan dari beberapa modul yang disusun di dalam sebuah direktori (folder). Paket biasanya digunakan untuk mengelompokkan modul-modul yang saling berhubungan.
Agar sebuah folder dikenali sebagai paket oleh Python, folder tersebut harus memiliki file khusus bernama __init__.py.
Contoh struktur direktori paket:
myproject/
│
├── main.py --> file kerja yang mengimport paket
└── matematika/
├── __init__.py
├── operasi.py
└── geometri.py
Isi masing-masing file:
operasi.py
def tambah(a, b):
return a + b
def kali(a, b):
return a * b
geometri.py
def luas_persegi(sisi):
return sisi * sisi
def luas_segitiga(alas, tinggi):
return 0.5 * alas * tinggi
__init__.py (kosong boleh, tapi bisa juga digunakan untuk inisialisasi paket)
# File __init__.py
print("Paket matematika telah diimport")
Di main.py, Anda dapat mengimpor modul dari paket seperti ini:
from matematika import operasi, geometri
print(operasi.tambah(4, 5))
print(geometri.luas_persegi(6))
Atau lebih spesifik:
from matematika.operasi import kali
print(kali(3, 3))
Hasil output:
Paket matematika telah diimport
9
36
Selain modul dan paket yang kita buat sendiri, Python memiliki ekosistem besar berbagai paket pihak ketiga yang dapat dipasang menggunakan pip (Python Package Installer).
numpypip install numpy
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(a + b) # operasi vektor
Output:
[5 7 9]
Kadang kita ingin tahu di mana lokasi modulnya disimpan:
import numpy
print(numpy.__file__)
Kode ini akan menampilkan path lengkap dari file paket tersebut di sistem Anda.
__init__.py untuk mengatur bagaimana paket dapat diimpor.as) untuk mempersingkat nama panjang modul.help() atau dir() untuk eksplorasi:import math
help(math)
dir(math)