0Pricing
Learn AI with Python · Pelajaran

Metode Ajaib (__str__, __repr__, dan lainnya)

Pelajari metode khusus Python untuk menyesuaikan perilaku objek

Metode Ajaib (__str__, __repr__, dan lainnya) adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 6 dari 6. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 6 pelajaran total.

Pengantar Metode Khusus

Pengantar Metode Khusus

Metode khusus, yang juga dikenal sebagai metode dunder (singkatan dari 'garis bawah ganda'), adalah metode khusus dalam Python yang memungkinkan Anda menentukan perilaku objek dalam situasi tertentu.

Dalam pelajaran ini, Anda akan mempelajari cara menggunakan metode khusus yang umum seperti __str__, __repr__, dan lainnya.

Metode Ajaib (__str__, __repr__, dan lainnya) — ilustrasi 1

Apa Itu Metode Khusus?

Apa Itu Metode Khusus?

Metode khusus adalah metode yang telah ditentukan sebelumnya dalam Python dan dipanggil secara otomatis ketika operasi tertentu dilakukan pada objek. Metode ini dikenali dari garis bawah gandanya, seperti __init__ atau __str__.

Metode __init__

Metode __init__

Metode __init__ adalah konstruktor yang menginisialisasi objek baru. Metode ini dipanggil secara otomatis saat objek dibuat:

# Using the __init__ method to initialize attributes
class Person:
    def __init__(self, name, age):
        self.name = name  # Initialize the name attribute
        self.age = age  # Initialize the age attribute

# Creating an instance of Person
person = Person("Alice", 30)
print(person.name, person.age)  # Outputs: Alice 30

Metode __str__

Metode __str__

Metode __str__ menentukan representasi string suatu objek saat print() dipanggil:

# Defining the __str__ method
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __str__(self):
        return f"Name: {self.name}, Age: {self.age}"  # String representation

person = Person("Alice", 30)
print(person)  # Outputs: Name: Alice, Age: 30

Metode __repr__

Metode __repr__

Metode __repr__ menyediakan representasi string resmi suatu objek dan sering digunakan untuk penelusuran kesalahan:

# Defining the __repr__ method
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __repr__(self):
        return f"Person('{self.name}', {self.age})"  # Debug-friendly representation

person = Person("Alice", 30)
print(repr(person))  # Outputs: Person('Alice', 30)

Membebani Operator dengan Metode Khusus

Membebani Operator dengan Metode Khusus

Anda dapat menggunakan metode khusus untuk menyesuaikan perilaku operator seperti + atau ==:

# Overloading the + operator with __add__
class Point:
    def __init__(self, x, y):
        self.x = x
        self.y = y

    def __add__(self, other):
        return Point(self.x + other.x, self.y + other.y)  # Adding two points

    def __str__(self):
        return f"({self.x}, {self.y})"

point1 = Point(1, 2)
point2 = Point(3, 4)
result = point1 + point2  # Calls __add__
print(result)  # Outputs: (4, 6)

Metode Khusus yang Umum Digunakan

Metode Khusus yang Umum Digunakan

Berikut beberapa metode khusus yang umum digunakan:

  • __len__: Menentukan perilaku fungsi len().
  • __getitem__: Memungkinkan pengindeksan seperti pada daftar atau kamus.
  • __eq__: Menyesuaikan perbandingan kesamaan menggunakan ==.

Menggunakan __len__ dan __getitem__

Menggunakan __len__ dan __getitem__

Anda dapat menggunakan __len__ untuk menentukan panjang objek khusus dan __getitem__ agar objek tersebut dapat diindeks:

# Using __len__ and __getitem__ in a custom class
class CustomList:
    def __init__(self, items):
        self.items = items

    def __len__(self):
        return len(self.items)  # Defines the behavior of len()

    def __getitem__(self, index):
        return self.items[index]  # Enables indexing

custom_list = CustomList([1, 2, 3])
print(len(custom_list))  # Outputs: 3
print(custom_list[1])  # Outputs: 2

Kesalahan Umum dalam Penggunaan Metode Khusus

Kesalahan Umum dalam Penggunaan Metode Khusus

Berikut beberapa kesalahan yang perlu dihindari:

  • Mendefinisikan metode khusus tanpa menyesuaikannya dengan perilaku yang dimaksud.
  • Membebani operator tanpa diperlukan.
  • Lupa menerapkan metode khusus yang diperlukan pada tipe data khusus.

Apa yang Telah Kita Pelajari?

Apa yang Telah Kita Pelajari?

Dalam pelajaran ini, Anda telah mempelajari:

  • Apa itu metode khusus dan alasan metode tersebut berguna.
  • Cara menggunakan metode khusus yang umum seperti __init__, __str__, dan __repr__.
  • Cara membebani operator menggunakan metode khusus.

Bagus sekali! Mari lanjutkan ke topik berikutnya.

Metode Ajaib (__str__, __repr__, dan lainnya) — ilustrasi 11

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Metode Ajaib (__str__, __repr__, dan lainnya)” gratis?

Ya — teks lengkap “Metode Ajaib (__str__, __repr__, dan lainnya)” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 6 pelajaran total.

Apa yang akan aku pelajari di “Metode Ajaib (__str__, __repr__, dan lainnya)”?

Pelajari metode khusus Python untuk menyesuaikan perilaku objek Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Learn AI with Python?

Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 6 dari 6.

Berapa lama pelajaran “Metode Ajaib (__str__, __repr__, dan lainnya)” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?

Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Kelas dan Objek
  2. Atribut dan Metode
  3. Pewarisan
  4. Polimorfisme
  5. Enkapsulasi dan Abstraksi
  6. Metode Ajaib (__str__, __repr__, dan lainnya)
← Kembali ke Learn AI with Python