Django Tips: Kenali apa itu python path

Halo semuanya, ternyata sudah lama juga ya sejak curhat terakhir saya di Django Tips 1  :). Kali ini saya akan memberikan satu tips lagi dan tidak jauh-jauh dari Python/Django.

Yang akan saya coba bahas adalah mengenai Python Path, kenapa? emang penting ya untuk dibahas?.. hmm… kalau buat saya ya sangat penting, memahami python path maka anda sudah menguasai salah satu bagian terpenting pemrograman di Python. saya akan menunjukkan salah satu hal keren yang bisa memberikan sedikit bayangan apa itu python path.

di python mungkin anda sudah terbiasa melihat dan membuat code seperti ini:

import os, sys
from module1 import halo
from module2.greeting import halohalo

Apa sebenarnya arti dari baris-baris kode tersebut.. Python path hanyalah sebuah direktori/folder biasa dimana direktori tersebut sudah dikenali python sebagai lingkungan kerjanya. Saya akan memberikan sebuah analogi sederhana.

SEBUAH ANALOGI

Anggap saja python adalah seorang raja, dimana memiliki beberapa daerah kekuasaan. Misalnya daerah kekuasaanya adalah Jakarta, Bandung dan Bali. ketika seorang teman dekat meminta tolong kepada raja python, “Hi teman, tolong bantu saya buatkan saya sebuah taman yang ada Tugu Monas nya, Gedung Sate nya dan patung GWK nya yang kayak di Bali.

Sang rajapun menjawab, “Silahkan teman, apa saja yang kamu inginkan tinggal bilang saja, akan ku carikan di semua daerah kekuasaanku”, maka sang teman ini menuliskan apa keperluannya:

import tukang_kayu, tukang_besi
from Jakarta import Tugu_Monas
from Bandung import Gedung_sate
from Bali import GWK
from Palembang import Mpek_mpek

Setelah sang raja membaca tulisan itu, sang rajapun menyetujui hampir semua permintaan itu, karena sang raja memiliki semuanya dari Jakarta, Bandung, Bali dan tukang dari kerajannya sendiri. Tetapi, sang raja menolak untuk memberikan Mpek_mpek karena Palembang bukan wilayahnya, sang rajapun menjawab “Maaf teman, semua bisa kupenuhi kecuali Mpek_Mpek dari palembang, karena itu bukan dari wilayah kekuasannku.”

Seperti itulah Python Path, semua yang berada di dalam python path bisa kita pakai di dalam program, sedangkan diluar itu kita tidak bisa memakainya. Apabila kita memanggil module python yang berada di luar python path maka Python akan komplain sangat keras :).

Jadi dengan memahami hal itu maka kita bisa memakai module python yang meskipun 1000 level di dalamnya suatu folder asalkan folder yang dalam itu merupakan python path.

contoh lagi: Misalkan file penjumlahan.py berada di folder /home/ekaputra/folder1/xxx/film/barat/action/calculator/penjumlahan.py, sedangkan file pengurangan.py berada di folder /home/ekaputra/folder10/cerita/fiksi/science/robots/pengurangan.py. anda bisa lihat kan perbedaan lokasi file nya..

Sekarang bagian paling kerennya, apabila folder calculator dan robots merupakan Python Path, meskipun folder diatas nya tidak, maka untuk menggunakan kedua module itu hanya sesederhana ini:

#berada di : /home/ekaputra/folder1/xxx/film/barat/action/calculator/penjumlahan.py
from calculator import penjumlahan
#berada di : /home/ekaputra/folder10/cerita/fiksi/science/robots/pengurangan.py
from robots import pengurangan

def hitung():
    hasil_jumlah = penjumlahan.tambah(100, 20)
    hasil_pengurangan = pengurangan.kurang(10, 5)
    return hasil_jumlah*hasil_pengurangan

Gampang kan menggunakannya, kita tidak perlu mengkhawatirkan dimana module itu berada, asal berada di Python Path maka memanggilnya hanya sesederhana import. saya misalkan di kode tersebut, module penjumlahan memilki sebuah fungsi tambah(nilai1, nilai2) dan akan menghasilkan penjumlahan dari nilai-nilai itu, begitu juga dengan pengurangan.

KESIMPULAN

Python Path inilah yang membuat program bisa sangat modular, tanpa berada dalam satu direktori dan dijadikan satu semuanya. Ini juga yang dimanfaatkan Django framework, sehingga Django terkenal dengan prinsip plugable/modular apps nya. Dimana sebuah Django project bisa terdiri dari berbagai apps yang dibuat sendiri atau dibuat programmer lain.

Bagi yang masih belum begitu paham dengan penjelasan saya diatas, saya menemukan sebuah artikel bagus tentang Python Path. Disini.

Sekian kali ini, semoga bermanfaat buat semuanya. Penyebutan Nama Kota diatas hanya untuk analogi saja, tidak ada unsur apapun di dalamnya.

Kalau ada yang kurang jelas, komen langsung yo..

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>