Hàm __init__ trong Python là một phương thức đặc biệt được sử dụng để khởi tạo các thuộc tính của một đối tượng từ một lớp (class). Phương thức này tự động được gọi khi bạn tạo một thể hiện (đối tượng) của lớp đó. Thường, nó được gọi là “constructor” (hàm khởi tạo) vì nó thường được sử dụng để khởi tạo các giá trị ban đầu cho các thuộc tính của đối tượng.

Dưới đây là một ví dụ đơn giản:
class MyClass:
def __init__(self, var1, var2):
self.var1 = var1
self.var2 = var2
print(var1,var2)
obj = MyClass("Hello", 42)
# Tạo một thể hiện của lớp MyClass và truyền các giá trị cho var1 và var2
obj = MyClass("Hello", 42)
# Khi obj được tạo, phương thức __init__ tự động được gọi
# và var1, var2 của obj sẽ được khởi tạo với các giá trị "Hello" và 42Trong ví dụ này:
__init__là hàm khởi tạo của lớpMyClass.selflà tham số đặc biệt đại diện cho đối tượng được tạo. Bạn sử dụngselfđể tham chiếu đến các thuộc tính và phương thức của đối tượng.var1vàvar2là các tham số bạn truyền vào để khởi tạo giá trị ban đầu cho các thuộc tính của đối tượng. Trong ví dụ này,var1vàvar2được sử dụng để thiết lập giá trị choself.var1vàself.var2.
Khi bạn tạo một đối tượng của lớp MyClass, như obj trong ví dụ trên, Python sẽ tự động gọi phương thức __init__ của lớp đó và truyền các giá trị bạn cung cấp cho var1 và var2 để khởi tạo các thuộc tính của đối tượng.
Kết quả.
Hello 42