Package

 


Python memiliki suatu konsep untuk membungkus beberapa file menjadi suatu kesatuan yang bisa kita panggil(import) di file lain untuk kebutuhan reusable. Konsep itu dinamakan package dan module. Package merupakan kumpulan dari module-module, dimana module adalah file Python (.py) yang berisi kumpulan class, fungsi, variabel, dan code Python lainnya.

Agar lebih mengerti konsep ini, lebih baik kita praktekan saja. Silakan buat sebuah project Python yang didalamnya terdapat sebuah package(folder) my_package. Berikut susunan project direktorinya:
your-project/
──── my_package/
     ──── init__.py
     ──── bar.py
     ──── foo.py
──── run.py
Didalam package my_package terdapat tiga buah file yang masing-masing berisi:
# __init__.py
from .foo import *
from .bar import *

print('__init__ is called')
# bar.py
def bar_func():
    print('This is bar function.')
# foo.py
def foo_func():
    print('This is a foo function')

# ambiguous function !!
def bar_func():
    print('This bar function is on FOO')
Dari ketiga file diatas, terdapat suatu file 'khusus' yang disebut __init__.py. File ini yang akan menyatukan semua module-module yang ada dalam package dan memperlakukan package itu sendiri seperti layaknya module. Perhatikan contoh program dibawah:
# run.py
import my_package as pkg

pkg.foo_func()
pkg.bar_func()

>>>'__init__ is called.'
>>>'This is foo function.'
>>>'This is bar function.'

Komentar

Postingan populer dari blog ini

NumPy Array Search

NumPy Array Split

NumPy Array Iterating