Fungsi#

Perkenalan#

Fungsi adalah komponen fundamental dalam pemrograman Python, yang mengemas potongan kode menjadi bagian kode yang efisien dan dapat digunakan kembali, yang dirancang untuk melakukan tugas tertentu. Fungsi dapat dipanggil beberapa kali dalam sebuah program, sehingga memudahkan pengorganisasian kode dan membantu menghindari pengulangan kode. Fungsi juga membuat kode lebih mudah di-debug.

Penting: Mendefinisikan fungsi saja tidak membuatnya berjalan. Gunakan start_thread untuk memulai fungsi dalam thread baru sehingga fungsi tersebut mulai berjalan segera di awal proyek, alih-alih menunggu event atau callback.

  • def mendefinisikan sebuah fungsi.

  • return mengirimkan output fungsi kembali ke program utama.

Penggunaan:

def function_name(parameters):
    # Code to execute when the function is called
    return result  # Optional, used to return a value

Parameter

Keterangan

function_name

Nama yang Anda berikan untuk fungsi Anda.

parameters

Opsional. Variabel yang menerima nilai input saat fungsi dipanggil, memungkinkan data untuk diteruskan ke dalam fungsi.

result

Opsional. Memungkinkan fungsi mengirimkan hasil kembali ke pemanggil. Jika suatu fungsi tidak menyertakan pernyataan return, maka secara default akan mengembalikan None.

Catatan: Suatu fungsi harus *selalu didefinisikan sebelum dipanggil.

Mendefinisikan dan Memanggil Fungsi#

Functions with No Parameters#

Jika suatu fungsi tidak memerlukan input, Anda dapat mendefinisikannya tanpa parameter.

def greeting():
    console.print("Hello!")

def main():
    # Call the greeting function
    greeting()

# Start threads — Do not delete
start_thread(main)

Functions with Parameters#

Anda juga dapat menambahkan parameter ke fungsi, yang memungkinkan Anda untuk memberikan informasi yang dibutuhkan fungsi agar dapat bekerja.

# Build Used: Super Code Base 2.0
def move_square(moves):
    for index in range(moves):
        drivetrain.drive_for(FORWARD, 150)
        drivetrain.turn_for(RIGHT, 90)

def main():
    # Call the move_square function
    move_square(4)
    

# Start threads — Do not delete
start_thread(main)

Functions with Default Arguments#

Argumen default adalah parameter yang mengasumsikan nilai default jika nilai tidak diberikan dalam panggilan fungsi untuk argumen tersebut.

# Build Used: Super Code Base 2.0
def move_square(moves=4):
    for index in range(moves):
        drivetrain.drive_for(FORWARD, 150)
        drivetrain.turn_for(RIGHT, 90)

def main():
    # Call the move_square function
    move_square()
    

# Start threads — Do not delete
start_thread(main)

Return Values from Functions#

Fungsi dapat mengirim data kembali ke pemanggil menggunakan kata kunci return Ini memungkinkan Anda untuk menangkap dan menggunakan output dalam program Anda.

def times_two(number):
    return number * 2

def main():
    # Display the return value
    console.print(times_two(2))

# Start threads — Do not delete
start_thread(main)

mulai_thread#

start_thread memulai sebuah fungsi dalam thread baru sehingga fungsi tersebut mulai berjalan segera setelah proyek dimulai.

Jika lebih dari satu start_thread digunakan, fungsi-fungsi tersebut akan berjalan secara bersamaan.

Usage:
start_thread(function)

Parameter

Keterangan

function

Nama fungsi yang telah didefinisikan sebelumnya.

# Build Used: Super Code Base 2.0
def move_square():
    # Move in a square path
    while True:
        drivetrain.drive_for(FORWARD, 150)
        drivetrain.turn_for(RIGHT, 90)

def led_lights():
    # Blink LED lights
    while True:
        bumper.set_color(GREEN)
        wait(0.5, SECONDS)
        bumper.set_color(RED)
        wait(0.5, SECONDS)

# Start threads — Do not delete
start_thread(move_square)
start_thread(led_lights)