Menu
CoddyTech

Parameter self

Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Python di Coddy. Pelajaran 4 dari 64.

Parameter self merujuk pada instance sebuah class di dalam method. Parameter ini memungkinkan kamu mengakses dan mengubah atribut object saat ini.

Berikut contoh class dengan method yang menggunakan self:

class Car:
    def honk(self):
        print("Beep beep!")
    
    def describe(self):
        print(f"I am a {self.color} {self.model}")

Parameter self harus selalu menjadi parameter pertama dalam definisi method. Parameter ini memberi tahu method object tertentu mana yang sedang digunakan.

Buat object mobil dan tambahkan atribut:

my_car = Car()
my_car.color = "Red"
my_car.model = "Sedan"

Sekarang panggil method-nya:

my_car.honk()
my_car.describe()

output:

Beep beep!
I am a Red Sedan

Perhatikan bahwa saat memanggil my_car.describe(), kamu tidak memberikan apa pun untuk self. Python otomatis memberikan my_car sebagai parameter self.

Inilah yang terjadi di balik layar:

# Saat kamu menulis ini:
my_car.describe()

# Python sebenarnya melakukan ini:
Car.describe(my_car)

Parameter self memungkinkan setiap object mengakses datanya sendiri. Tanpa self, method tidak akan tahu atribut milik object mana yang harus digunakan.

Poin penting: Selalu sertakan self sebagai parameter pertama dalam definisi method, tetapi jangan pernah meneruskannya saat memanggil method. Python menangani ini secara otomatis.

challenge icon

Tantangan

Mudah

Lengkapi Car class di car.py dengan menambahkan method bernama display_info yang menggunakan parameter self untuk mencetak tahun, merek, dan model mobil dengan format:

"This car is a [year] [make] [model]".

  • car.py: Berisi definisi Car class tempat kamu akan menambahkan method display_info
  • driver.py: File eksekusi utama yang mengimpor dan menggunakan Car class

File driver.py akan mengimpor Car class milikmu dan membuat instance untuk menguji implementasimu. Pastikan method-mu bekerja dengan benar saat dipanggil dari file driver.

Coba sendiri

from car import Car

# Uji kodemu
my_car = Car()
my_car.year = 2020
my_car.make = "Toyota"
my_car.model = "Corolla"

my_car.display_info()  # Seharusnya mencetak: This car is a 2020 Toyota Corolla
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pemrograman Berorientasi Objek

Latihan sendiri: Compiler Python online