Jadikan kode Anda lebih mudah dipahami, digunakan, dan dipelihara

Jika Anda ingat, kami menggunakan beberapa fungsi bawaan di tutorial terakhir, seperti print() atau type(). Namun Anda juga dapat membuat fungsi Anda sendiri — disebut fungsi yang ditentukan pengguna, atau UDF.

Fungsi dapat dianggap sebagai aturan yang menetapkan sekumpulan masukan ke sekumpulan keluaran seperti yang ditunjukkan di bawah ini.

Dalam tutorial ini, Anda akan mempelajari lebih lanjut tentang mendefinisikan dan menggunakan fungsi Anda sendiri.

Kapan dan Mengapa menggunakan fungsi dalam kode Anda

Kebanyakan pemrogram melakukan tugas-tugas yang cukup besar untuk dipecah menjadi beberapa subtugas.

Daripada menulis satu set pernyataan yang besar, Anda dapat memecah program menjadi beberapa fungsi kecil, sehingga Anda dapat “membagi dan menaklukkan” suatu masalah pemrograman.

Alasan lain menggunakan fungsi adalah untuk mengurangi jumlah baris yang Anda tulis.

Jika Anda akan menggunakan beberapa kode beberapa kali dalam aplikasi Anda, Anda tidak ingin menyalin-menempelkan baris yang sama beberapa kali dalam kode Anda. Itu tidak efisien dan terlihat jelek :) Ingatlah kalimat berikut :

KERING - JANGAN ULANGI DIRI SENDIRI

Mendefinisikan dan Memanggil fungsi

Fungsi adalah blok kode yang menjalankan suatu tugas, diawali dengan pengenal def diikuti dengan nama fungsi dan tanda kurung (), dengan tanda titik dua ':'di akhir baris.

Fungsi, seperti variabel, harus diberi nama dan dibuat sebelum Anda dapat menggunakannya menggunakan pengenal def.

  • Setiap pernyataan di dalam fungsi Anda harus diindentasi (4 spasi atau satu tab).
  • Jika fungsi Anda memerlukan satu atau lebih input (disebut argumen) untuk dihitung, Anda perlu menempatkannya di dalam tanda kurung().
  • Pernyataan return keluar dari fungsi yang mengembalikan nol, satu atau lebih keluaran.

Saat Anda menjalankan suatu fungsi, Anda mengatakan bahwa Anda “memanggil”, setelah suatu fungsi dihitung, Python akan kembali ke baris langsung setelah pemanggilan fungsi awal

Praktik

Fungsi Menu Minuman

Misalnya, Anda diminta memprogram fungsi Python untuk menu minuman di restoran. Asumsikan minuman kecil seharga $1,50, minuman sedang seharga $2,50, dan minuman besar seharga $3,50.

Harga minuman ditentukan oleh ukuran minumannya. Oleh karena itu, harga suatu minuman dapat diturunkan dari ukurannya.

Cara mudahnya adalah dengan memetakan ukuran ke angka, 1,2, dan 3. Harga minuman Y sama dengan 0,5 + X.

* Sama dengan 1 jika minumannya kecil, 2 jika sedang, dan 3 jika besar.

def get_drink_price(size):
    price = size + 0.5
    return price
get_drink_price(1)  #Returs 1.5
get_drink_price(2)  #Returs 2.5
get_drink_price(3)  #Returs 3.5

Ketika kode di atas dijalankan, maka akan menghasilkan hasil harga yang benar

Mari melangkah lebih dalam dan mendefinisikan argumen ukuran dengan tepat sebagai S, M, atau L.

def get_drink_price(reminder='Please try S, M or L'):
    ok = input('Choose your drink size ?\n')
    if ok in ('s', 'S'):
        return 1.5
    elif ok in ('m', 'M'):
        return 2.5
    elif ok in ('l', 'L'):
        return 3.5
    else:
        print(reminder)
get_drink_price()  #Enter s, m or l to get the price of the drink

Memanggil Fungsi dari File Lain — Modul

Seiring bertambahnya panjang program, Anda mungkin ingin membaginya menjadi beberapa file untuk memudahkan pemeliharaan, yang juga disebut Modul. Anda mungkin juga ingin menggunakan fungsi praktis yang telah Anda tulis di beberapa program tanpa menyalin definisinya ke setiap program.

Modul adalah file yang berisi definisi dan pernyataan Python. Nama file adalah nama modul dengan akhiran .py.

Mengonversi Suhu dari Celsius ke Fahrenheit

Skrip ini mengubah suhu antara Fahrenheit ke Celcius. Untuk membuat konverter python untuk Celsius dan Fahrenheit, Anda harus terlebih dahulu mencari tahu rumus mana yang akan digunakan. Pencarian Google cepat dan Anda siap berangkat.

(°F — 32) x 5/9 = °C atau dalam bahasa Inggris sederhana, Kurangi dulu 32, lalu kalikan 5, lalu bagi 9.

Misalnya, gunakan editor teks favorit Anda untuk membuat file bernama utils.py di direktori saat ini dengan konten berikut:

def convert_fahrenheit_to_celsius(fahrenheit):
    celsius = float(fahrenheit - 32) * (5 / 9)
    return celsius
def convert_celsius_to_fahrenheit(celsius):
    fahrenheit = (float(celsius) * 9 / 5 + 32)
    return fahrenheit

Kedua fungsi tersebut dapat digunakan oleh skrip terpisah selama nama file dan fungsi diimpor dalam skrip terpisah terlebih dahulu.

File yang berisi definisi fungsi harus diakhiri dengan ekstensi .py. Tanpa ekstensi .py, file tempat fungsi didefinisikan tidak dapat diimpor.

Anda sekarang dapat mengimpor fungsi Anda dari file utils.py menggunakan salah satu kode berikut

Impor semua fungsi dalam file .py

Sekarang masukkan juru bahasa Python dan impor modul ini dengan perintah berikut:

import utils #Import all module functions utils.convert_fahrenheit_to_celsius()

Ini tidak memasukkan nama fungsi yang didefinisikan dalam utils secara langsung; itu hanya memasukkan nama modul utils di sana. Dengan menggunakan nama modul Anda dapat mengakses fungsi menggunakan notasi '.':

Impor fungsi tertentu dalam file Python

Terdapat varian dari pernyataan import yang mengimpor nama dari modul langsung ke tabel simbol modul yang mengimpor. Misalnya:

from utils import convert_fahrenheit_to_celsius()
from utils import * #Import all utils functions
convert_fahrenheit_to_celsius()

Sebuah modul dapat berisi pernyataan yang dapat dieksekusi serta definisi fungsi. Pernyataan ini dimaksudkan untuk menginisialisasi modul. Mereka dieksekusi hanya pertama kali nama modul ditemukan dalam pernyataan import.

Lebih lanjut tentang modul di tutorial berikutnya :)

Kesimpulan

Pemrogram sering kali mengatur programnya menjadi kode yang lebih kecil dan lebih mudah dikelola dengan menulis fungsi (UDF), kelas, dan modulnya sendiri.

Fungsi memberikan beberapa manfaat:

  • Izinkan potongan kode yang sama dijalankan beberapa kali
  • Memecah program yang panjang menjadi komponen-komponen kecil yang dapat digunakan kembali
  • Dapat dibagikan dan digunakan oleh programmer lain

Semua bahasa pemrograman sudah dikemas sebelumnya dengan beberapa pustaka fungsi standar yang dirancang untuk mempermudah pekerjaan Anda sebagai programmer.

Semoga Anda semua menikmati membaca tutorial ini. Terima kasih telah membaca. Seperti biasa, sampai jumpa lagi! 😀

Konten lainnya di . Daftar ke >kami. Ikuti kami di "Twitter" dan "LinkedIn". Kunjungi Perselisihan Komunitas kami dan bergabunglah dalam kami.