Mengenal Fungsi Pada Python Lengkap Berserta Contoh Programnya

Mengenal Fungsi Pada Python Lengkap Berserta Contoh Programnya

Fungsi Pada Python - Pada Kesempatan kali ini Becak code akan membahas tentang Function atau Fungsi padad Python .Pada pembuatan program yang kompleks dan memiliki banyak fitur, kita diharuskan menggunakan fungsi.

 Kenapa memangnya kalau tidak menggunakan fungsi? 


 Bisa jadi kita akan kerepotan menulis kode programnya, karena banyak yang harus ditulis dan kode akan menjadi sulit dibaca dan dirawat (maintenance). Dengan fungsi, kita dapat memecah program-program yang  besar menjadi sub-sub program yang lebih sederhana. Masing-masing fitur yang ada di program dapat kita buat dalam satu fungsi. Pada saat kita membutuhkan fitur tersebut, kita tinggal panggil fungsinya saja. [becakcode.site]

 Hal ini akan kita coba pada contoh program yang sudah saya sediakan di bawah. Namun, terlebih dahulu… Kita harus paham teori dasar dan hal apa saja yang harus kita ketahui tentang fungsi di Python. Siap? Mari kita mulai.

 Mengenal Fungsi Pada Python Lengkap Berserta Contoh Programnya 


Function / Fungsi pada Python, dibuat dengan sebuah kata kunci def kemudian diikuti dengan nama fungsinya.
 Contoh:

def nama_fungsi():
    print "Hello ini Fungsi"

Sama seperti blok code yang lain, kita juga harus memberikan sebuah identasi (tab atau spasi 2x) untuk menuliskan isi function Membuat Fungsi di Python Setelah kita buat fungsinya, lalu apa? Setelah kita buat, kita bisa memanggilnya seperti ini: nama_fungsi() Sebagai contoh, coba tulis kode program berikut:

# Membuat Fungsi
def salam():
    print "Hello, Selamat Pagi"

## Pemanggilan Fungsi
salam()
Hasilnya:

Hello, Selamat Pagi
Coba panggil sebanyak 3x:

# Membuat Fungsi
def salam():
    print "Hello, Selamat Pagi"

## Pemanggilan Fungsi
salam()
salam()
salam()
Hasilnya:

Hello, Selamat Pagi
Hello, Selamat Pagi
Hello, Selamat Pagi

Mudah bukan?

Baca juga cara Membuat Aplikasi chat room multi client python

 Intinya apapun yang ada di dalam fungsi, ketika dipanggil itulah yang akan dilakukan. FYI: fungsi juga dapat dipanggil pada fungsi lain, bahkan bisa memanggil dirinya sendiri. Fungsi yang memanggil dirinya sendiri, disebut fungsi rekursif. Fungsi dengan Parameter Sekarang, bagaimana kalau kita ingin memberikan input nilai ke dalam fungsi? Gampang… Kita bisa manfaatkan parameter.

 Apa itu parameter?


 Parameter adalah sebuah variabel yang menampung nilai untuk diproses kedalam fungsi. Fungsi dengan parameter

 Contoh:

def salam(ucapan):
    print(ucapan)

Pada contoh diatas, kita membuat fungsi dengan parameter ucapan. Lalu bagaimana cara memanggilnya? Cara untuk pemanggilan fungsi yang mempunyai parameter adalah seperti berikut ini:

salam("Selamat siang")

"Selamat siang" adalah nilai parameter yang kita berikan. Lalu bagaimana kalau parameternya lebih dari satu? Kita dapat menggunakan tanda koma (,) untuk memisahnya.

 Contoh:

# Membuat fungsi dengan parameter
def luas_segitiga(alas, tinggi):
    luas = (alas * tinggi) / 2
    print "Luas segitiga: %f" % luas;

# Pemanggilan fungsi
luas_segitiga(4, 6)

Hasilnya:

Luas segitiga: 12.000000

Fungsi yang Mengembalikan Nilai Fungsi yang tidak mengembalikan nilai biasanya disebut dengan prosedur. Namun, kadang kita butuh hasil proses dari fungsi untuk digunakan pada proses berikutnya. Maka fungsi harus mengembalikan nilai dari hasil pemrosesannya. Cara mengembalikan nilai adalah menggunkan kata kunci return lalu diikuti dengan nilai atau variabel yang akan dikembalikan. Fungsi retrun python Contoh:

def luas_persegi(sisi):
    luas = sisi * sisi
    return luas

# pemanggilan fungsi
print "Luas persegi: %d" % luas_persegi(6)

Hasilnya: Luas persegi: 36 Apa bedanya dengan fungsi luas_segitiga() yang tadi?
 Pada fungsi luas_segitiga() kita melakukan print dari hasil pemrosesan secara langsung di dalam fungsinya. Sedangkan untuk fungsi luas_persegi(), kita dapat melakukan print pada saat pemanggilannya. Jadi, fungsi luas_persegi() akan bernilai sesuai dengan hasil yang dikembalikan. Sehingga kita dapat memanfaatkannya untuk pemerosesan berikutnya. Misalnya seperti ini:

# rumus: sisi x sisi
def luas_persegi(sisi):
    luas = sisi * sisi
    return luas


# rumus: sisi x sisi x sisi
def volume_persegi(sisi):
    volume = luas_persegi(sisi) * sisi
    
Pada contoh di atas, kita melakukan pemanggilan fungsi luas_persegi() untuk menghitung volume persegi.

 Variabel Global dan Lokal pada Python Saat kita menggunakan fungsi, maka kita juga harus mengetahui yang namanya variabel Global dan Lokal. Apa itu?

 Variabel Global adalah variabel yang bisa diakses dari semua fungsi, sedangkan variabel lokal hanya bisa diakses di dalam fungsi tempat ia berada saja. Pada bahasa pemrograman Python, urutan pengaksesan variabel (scope) juga terkenal disebut LGB (Local, Global, dan Build-in).

 Jadi program python mulai mencari vairabel lokal terlebih dahulu, kalau ada maka itu yang digunakan. Tapi kalau nggak ada pencarian terus ke Global, dan Build-in. Variabel Build-in adalah variabel yang sudah ada di dalam Python.

Pelajari juga cara membuat kalkulator python 2019 terbaru

 Contoh program:

# membuat variabel global
nama = "Becakcode"
versi = "1.0.0"

def help():
    # ini variabel lokal
    nama = "CodeKu"
    versi = "1.0.2"
    # mengakses variabel lokal
    print "Nama: %s" % nama
    print "Versi: %s" % versi


# mengakses variabel global
print "Nama: %s" % nama
print "Versi: %s" % versi

# memanggil fungsi help()
help()

Hasilnya:

Nama: Becakcode
Versi: 1.0.0
Nama: CodeKu
Versi: 1.0.2

 Perhatikanlah variabel nama yang berada di dalam fungsi help() dan diluar fungsi `help().
 Variabel nama yang berada di dalam fungsi help() adalah variabel lokal. Jadi, saat kita memanggil fungsi help() maka nilai yang akan tampil adalah nilai yang ada di dalam fungsi help().
 Kenapa tidak tampil yang global?

 Karenanya itu tadi…

Bahasa Python mulai mencari dari local, ke Global, dan build - in. Kalau di tiga tempat itu tidak ditemukan, maka biasanya akan terjadi NameError atau variabel tidak ditemukan.

 Contoh Program dengan Fungsi Biaklah, sekarang tiba saatnya kita membuat program…

 Silahkan buat file baru bernama program_fungsi.py. Lalu kita mulai tulis kodenya. Pertama kita buat sebuah variabel global berupa list untuk menampung judul-judul buku.

# Variabel global untuk menyimpan data Buku
buku = []

Nanti program ini akan mampu melakukan operasi CRUD (Create, Read, Update, dan Delete). Maka kita membutuhkan fungsi-fungsi berikut: show_data() untuk menampilkan data dari list buku; insert_data() untuk menambahkan data ke list buku; edit_data() untuk mengedit data di list buku; delete_data() untuk untuk menghapus data dari list buku. Mari kita buat semuanya. Dimulai dari fungsi show_data():

# fungsi untuk menampilkan semua data
def show_data():
    if len(buku) <= 0:
        print "BELUM ADA DATA"
    else:
        for indeks in range(len(buku)):
            print "[%d] %s" % (indeks, buku[indeks])

Fungsi yang  diatas akan mengecek isi dari list buku. Jika isinya kosong (len(buku) <= 0) maka tampilkan "BELUM ADA DATA". Namun, apabila ada isinya, maka tampilkan semua isinya dengan perulangan. Selanjutnya membuat fungsi insert_data():

# fungsi untuk menambah data
def insert_data():
    buku_baru = raw_input("Judul Buku: ")
    buku.append(buku_baru)

Fungsi di atas akan mengambil input dari user kemudian diisi ke dalam list buku dengan fungsi append().

 Fungsi append() adalah fungsi untuk menambahkan item di akhir list. Selain append() ada juga prepend(). Namun, untuk kasus ini, kita pakai append() saja. Penjelasan lengkap tentang append() dan prepend() bisa dibaca pada: Mengenal Struktur Data List pada Python. Selanjutnya membuat fungsi edit_data():

# fungsi untuk edit data
def edit_data():
    show_data()
    indeks = input("Inputkan ID buku: ")
    if(indeks > len(buku)):
        print "ID salah"
    else:
        judul_baru = raw_input("Judul baru: ")
        buku[indeks] = judul_baru

Fungsi di atas akan menampilkan isi dari list buku dengan memanggil fungsi show_data() di dalamnya. Setelah itu, kita meminta user untuk menginputkan ID atau nomer indeks buku yang akan diedit. Lalu kita lakukan pengecekan, jika ID yang diinputkan melebihi dari isi list buku (indeks > len(buku)), maka tampilkan pesan "ID salah". Namun, apabila tidak melebihi dari isi buku, maka ambil input untuk judul baru dan simpan sesuai ID-nya. Selanjutnya membuat fungsi delete_data():

# fungsi untuk menhapus data
def delete_data():
    show_data()
    indeks = input("Inputkan ID buku: ")
    if(indeks > len(buku)):
        print "ID salah"
    else:
        buku.remove(buku[indeks])

Hampir sama dengan fungsi edit_data().
 Fungsi delete_data() juga harus menampilkan isi yang ada didalam list buku dan mengambil ID yang akan dihapus. Kita bisa menghapus item pada list dengan fungsi remove(). Apakah sudah selesai? Belum, masih ada dua fungsi lagi yang kita butuhkan: Fungsi untuk menampilkan menu Fungsi untuk keluar (sudah ada di python: exit()) Ok, mari kita buat:

baca juga cara membuat aplikasi tebak kata python terbaru

# fungsi untuk menampilkan menu
def show_menu():
    print "\n"
    print "----------- MENU ----------"
    print "[1] Show Data"
    print "[2] Insert Data"
    print "[3] Edit Data"
    print "[4] Delete Data"
    print "[5] Exit"
    
    menu = input("PILIH MENU> ")
    print "\n"

    if menu == 1:
        show_data()
    elif menu == 2:
        insert_data()
    elif menu == 3:
        edit_data()
    elif menu == 4:
        delete_data()
    elif menu == 5:
        exit()
    else:
        print "Salah pilih!"
Fungsi di atas akan menampilkan menu dari 1–5, lalu memanggil fungsi-fungsi yang sudah dibuat berdasarkan menu yang dipilih.

Terakhir, kita harus membuat main loop programnya.

if __name__ == "__main__":

    while(True):
        show_menu()

Program akan mengulang terus-menerus sampai fungsi exit() dieksekusi.

 if __name__ == "__main__":  adalah block main di bahasa pemrograman Python. Sebenarnya tanpa ini, programnya sudah bisa dijalankan. Tapi biar cakep, kita tambahkan saja.

 Sehingga kode lengkapnya akan seperti ini:

# Variabel global untuk menyimpan data Buku
buku = []


# fungsi untuk menampilkan semua data
def show_data():
    if len(buku) <= 0:
        print "BELUM ADA DATA"
    else:
        for indeks in range(len(buku)):
            print "[%d] %s" % (indeks, buku[indeks])


# fungsi untuk menambah data
def insert_data():
    buku_baru = raw_input("Judul Buku: ")
    buku.append(buku_baru)

# fungsi untuk edit data
def edit_data():
    show_data()
    indeks = input("Inputkan ID buku: ")
    if(indeks > len(buku)):
        print "ID salah"
    else:
        judul_baru = raw_input("Judul baru: ")
        buku[indeks] = judul_baru

# fungsi untuk menhapus data
def delete_data():
    show_data()
    indeks = input("Inputkan ID buku: ")
    if(indeks > len(buku)):
        print "ID salah"
    else:
        buku.remove(buku[indeks])

# fungsi untuk menampilkan menu
def show_menu():
    print "\n"
    print "----------- MENU ----------"
    print "[1] Show Data"
    print "[2] Insert Data"
    print "[3] Edit Data"
    print "[4] Delete Data"
    print "[5] Exit"
    
    menu = input("PILIH MENU> ")
    print "\n"

    if menu == 1:
        show_data()
    elif menu == 2:
        insert_data()
    elif menu == 3:
        edit_data()
    elif menu == 4:
        delete_data()
    elif menu == 5:
        exit()
    else:
        print "Salah pilih!"


if __name__ == "__main__":

    while(True):
        show_menu()

Cobalah untuk mengeksekusinya dan perhatikan hasilnya.
DONASI VIA PAYPAL Bantu berikan donasi jika artikelnya dirasa bermanfaat. Donasi akan digunakan untuk memperpanjang domain https://becakcode.blogspot.com/. Terima kasih.
Newer Posts Newer Posts Older Posts Older Posts
loading...

More posts

Comments

Post a Comment