Last Updated on October 2, 2023 by
Python adalah bahasa pemrograman yang kuat dan fleksibel dan satu dari kekuatannya terletak pada fitur-fitur fungsionalnya. Pada tutorial kali ini, kita akan memahami dan mengimplementasikan tiga fungsi fungsional penting yaitu python map, filter, dan reduce. Yuk simak selengkapnya dibawah ini!
Table of Contents
Apa Itu Map, Filter dan Reduce?
Berikut adalah pengertian Map, Filter dan Reduce dalam Python.
Map
Map adalah fungsi bawaan Python yang memungkinkan pengguna menerapkan fungsi tertentu pada setiap elemen dari iterable (seperti daftar atau tupel). Ini mengembalikan iterator dari hasil fungsi tersebut.
Filter
Filter digunakan untuk menyaring elemen dari iterable berdasarkan kondisi tertentu. Ini mengembalikan hanya elemen yang memenuhi kriteria yang ditentukan.
Reduce
Reduce adalah fungsi yang memungkinkan pengguna menggabungkan elemen dalam iterable menjadi satu nilai akhir. Ini melibatkan penggunaan fungsi yang diaplikasikan secara kumulatif pada elemen iterable.
Mengapa Ini Penting dalam Pemrograman Python?
- Kemudahan Penggunaan
Fungsi ini menyediakan pendekatan yang mudah dan ringkas untuk manipulasi data. Dengan satu baris kode, kalian dapat melakukan transformasi, penyaringan atau penggabungan data.
- Efisiensi
Penggunaan Map, Filter dan Reduce membantu meningkatkan efisiensi kode kalian. Mereka meminimalkan pengulangan dan menyediakan cara yang lebih deklaratif untuk mengelola data.
- Kesesuaian dengan Paradigma Pemrograman Fungsional
Map, Filter dan Reduce cocok dengan paradigma pemrograman fungsional. Itu memungkinkan kalian untuk berpikir dalam hal operasi pada data daripada perubahan status.
- Kekuatan Manipulasi Data
Dalam pengolahan data besar, penggunaan Map, Filter dan Reduce dapat menghasilkan kode yang lebih mudah dipahami dan dielola daripada pendekatan konvensional.
Penggunaan Map, Filter dan Reduce
Berikut adalah penggunaan Map, Filter dan Reduce. Mari kita mulai dari penggunaan Map.
Map
Menggandakan Setiap Elemen dalam Daftar
# Definisikan daftar numbers = [1, 2, 3, 4, 5] # Gunakan map() untuk menggandakan setiap elemen doubled_numbers = map(lambda x: x * 2, numbers) # Konversi hasil map() ke dalam daftar result = list(doubled_numbers) # Tampilkan hasil print(result) # Output: [2, 4, 6, 8, 10]
Mengonversi Setiap Karakter Menjadi Huruf Besar
# Definisikan daftar kata words = ["apel", "pisang", "jeruk"] # Gunakan map() untuk mengonversi setiap kata menjadi huruf besar uppercase_words = map(str.upper, words) # Konversi hasil map() ke dalam daftar result = list(uppercase_words) # Tampilkan hasil print(result) # Output: ['APEL', 'PISANG', 'JERUK']
Menghitung Panjang Setiap Kata dalam Daftar
# Definisikan daftar kata words = ["Python", "is", "fun"] # Gunakan map() untuk menghitung panjang setiap kata word_lengths = map(len, words) # Konversi hasil map() ke dalam daftar result = list(word_lengths) # Tampilkan hasil print(result) # Output: [6, 2, 3]
Mengonversi Setiap Bilangan ke Dalam String
# Definisikan daftar bilangan numbers = [1, 2, 3, 4, 5] # Gunakan map() untuk mengonversi setiap bilangan menjadi string number_strings = map(str, numbers) # Konversi hasil map() ke dalam daftar result = list(number_strings) # Tampilkan hasil print(result) # Output: ['1', '2', '3', '4', '5']
Fungsi map() dapat diterapkan pada berbagai situasi untuk melakukan transformasi pada setiap elemen dalam iterable.
Filter
Berikut adalah beberapa contoh penggunaan fungsi filter() pada Python.
Memfilter Bilangan Ganjil
# Definisikan daftar bilangan numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # Gunakan filter() untuk memfilter bilangan ganjil odd_numbers = filter(lambda x: x % 2 != 0, numbers) # Konversi hasil filter() ke dalam daftar result = list(odd_numbers) # Tampilkan hasil print(result) # Output: [1, 3, 5, 7, 9]
Memfilter Kata dengan Panjang Lebih Dari 3 Karakter
# Definisikan daftar kata words = ["cat", "dog", "elephant", "bird", "lion"] # Gunakan filter() untuk memfilter kata dengan panjang lebih dari 3 karakter long_words = filter(lambda x: len(x) > 3, words) # Konversi hasil filter() ke dalam daftar result = list(long_words) # Tampilkan hasil print(result) # Output: ['elephant', 'bird', 'lion']
Memfilter Bilangan Positif
# Definisikan daftar bilangan numbers = [-2, -1, 0, 1, 2, 3, 4, 5] # Gunakan filter() untuk memfilter bilangan positif positive_numbers = filter(lambda x: x > 0, numbers) # Konversi hasil filter() ke dalam daftar result = list(positive_numbers) # Tampilkan hasil print(result) # Output: [1, 2, 3, 4, 5] Memfilter String Non-Kosong # Definisikan daftar string strings = ["", "hello", "", "world", ""] # Gunakan filter() untuk memfilter string non-kosong non_empty_strings = filter(lambda x: x != "", strings) # Konversi hasil filter() ke dalam daftar result = list(non_empty_strings) # Tampilkan hasil print(result) # Output: ['hello', 'world']
Fungsi filter() berguna untuk menyaring elemen-elemen tertentu dari suatu iterable berdasarkan kondisi yang diberikan.
Reduce
Berikut adalah beberapa contoh penggunaan fungsi reduce() pada Python.
Menjumlahkan Bilangan dalam Sebuah List
from functools import reduce # Definisikan daftar bilangan numbers = [1, 2, 3, 4, 5] # Gunakan reduce() untuk menjumlahkan bilangan sum_result = reduce(lambda x, y: x + y, numbers) # Tampilkan hasil print(sum_result) # Output: 15 Mengalikan Semua Elemen dalam Sebuah List from functools import reduce # Definisikan daftar bilangan numbers = [2, 3, 4, 5] # Gunakan reduce() untuk mengalikan bilangan product_result = reduce(lambda x, y: x * y, numbers) # Tampilkan hasil print(product_result) # Output: 120
Menggabungkan String dalam Sebuah List
from functools import reduce # Definisikan daftar string strings = ["Hello", ", ", "world", "!"] # Gunakan reduce() untuk menggabungkan string concatenated_result = reduce(lambda x, y: x + y, strings) # Tampilkan hasil print(concatenated_result) # Output: Hello, world!
Menemukan Nilai Maksimum dalam Sebuah List
from functools import reduce # Definisikan daftar bilangan numbers = [14, 3, 8, 21, 6] # Gunakan reduce() untuk menemukan nilai maksimum max_result = reduce(lambda x, y: x if x > y else y, numbers) # Tampilkan hasil print(max_result) # Output: 21
Fungsi reduce() berguna untuk mengaplikasikan fungsi biner berulang kali pada elemen-elemen iterable secara kumulatif dari kiri ke kanan sehingga menghasilkan nilai tunggal.
Kesimpulan
Tutorial ini membahas tentang Python Map, Filter dan Reduce yang memainkan peran penting dalam manipulasi data. Keunggulan mereka yaitu kemudahan penggunaan, efisiensi kode, kesesuaian dengan pemrograman fungsional dan kekuatan dalam manipulasi data besar.
Fungsi Map, Filter dan Reduce
Map: Transformasi elemen iterable.
Filter: Menyaring elemen berdasarkan kondisi.
Reduce: Menggabungkan elemen menjadi satu nilai akhir.
Pentingnya Dalam Python
- Kemudahan Penggunaan.
- Efisiensi: Mengurangi pengulangan dan meningkatkan efisiensi.
- Pemrograman Fungsional: Sesuai dengan paradigma fungsional.
- Manipulasi Data: Cocok untuk data besar sehingga menghasilkan kode yang mudah dipahami.
Dengan memahami cara menggunakan map, filter dan reduce, kita dapat membuat kode Python lebih efisien, ekspresif dan sesuai dengan pendekatan fungsional.
Temukan lebih banyak artikel seri belajar Python maupun bahasa pemrograman lainnya hanya di CODEKEY. Klik https://codekey.id/ sekarang juga untuk langsung belajar gratis. Sampai bertemu lagi!
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.