Loại hàm tạo Python

Hàm tạo là phương thức đầu tiên được gọi khi tạo đối tượng [một khái niệm từ Lập trình hướng đối tượng]. Nó luôn là một phần của một lớp [các phương thức đối tượng được định nghĩa trong một lớp]

Hàm tạo luôn được gọi khi tạo một đối tượng mới. Nó có thể được sử dụng để khởi tạo các biến lớp và các thói quen khởi động

khóa học liên quan. Khóa học & bài tập lập trình Python

Giới thiệu

Hàm tạo là một phương thức bên trong lớp, được gọi nếu một đối tượng mới được tạo

Hàm tạo cho phép bạn đặt biến cho đối tượng ngay lập tức

user[1] = User['Alice','Coder','Windows']
user[2] = User['Bea','Marketeer','Mac']

Thay vì phải đặt từng biến theo cách thủ công như

user[1].name = 'Alice'
user[1].job = 'Coder'
user[1]....
# etc

Mỗi lớp có thể chứa một và chỉ một hàm tạo

Hàm tạo luôn có tên là

user[1].name = 'Alice'
user[1].job = 'Coder'
user[1]....
# etc
9

Hình ảnh bên dưới hiển thị hai lớp, mỗi lớp có một hàm tạo [được đánh dấu]

Có một vài quy tắc cho các nhà xây dựng

  • Một hàm tạo phải được xác định với tên
    class Example:
    def __init__[self]:
    pass
    0
  • Một hàm tạo phải được xác định bằng từ khóa self trong các tham số của nó
  • Hàm tạo không thể trả về bất kỳ giá trị nào, ngoại trừ Không có
  • Chỉ có một hàm tạo được phép cho một lớp
  • Chỉ dành cho khởi tạo đối tượng

Thí dụ

Cú pháp của hàm tạo là

user[1].name = 'Alice'
user[1].job = 'Coder'
user[1]....
# etc
9. Bên trong một lớp nó trông như thế này

class Example:
def __init__[self]:
pass

Sau đó, nếu bạn tạo một ví dụ, hàm tạo sẽ được gọi. Nếu bạn tạo hai đối tượng, hàm tạo sẽ được gọi hai lần

obj1 = Example[] # constructor called
obj2 = Example[] # constructor called

Ý tưởng của hàm tạo là đặt các biến đối tượng

Bạn có thể có một lớp học như thế này

>>> class Computer:
.. def __init__[self, name, speed]:
.. self.name = name
.. self.speed = speed
...

Sau đó tạo một vài đối tượng

Mỗi đối tượng có các giá trị duy nhất, giống như thế giới thực

Các giá trị đó được đặt khi tạo đối tượng, đây là nơi hàm tạo được gọi trong nền

________số 8_______

Nếu bạn là người mới bắt đầu học Python, thì tôi thực sự khuyên bạn nên đọc cuốn sách này

ví dụ trực quan

Trong ví dụ bên dưới, chúng ta tạo một lớp C với hàm tạo và phương thức xem. Trong Python, hàm tạo được đặt tên là init

class C:
def __init__[self]:
print['Constructor called.']

def see[self]:
print['C']

Hàm tạo [init] chỉ là một phương thức khác. Điều đặc biệt về nó là nó được gọi mỗi khi một đối tượng mới được tạo

Chúng tôi tạo một đối tượng C với dòng

obj = C[]

Khi thực hiện, nó sẽ xuất cả hai dòng văn bản. Tại sao?

class C:
def __init__[self]:
print['Constructor called.']

def see[self]:
print['C']

obj = C[]
obj.see[]

Điều này sẽ xuất ra

Constructor called.
C

Xem cách đầu ra của hàm tạo được hiển thị trước

Hàm tạo được gọi ngay lập tức khi tạo đối tượng, điều này đặc biệt rõ ràng trong trình bao Python

Nếu đây là lớp học của bạn

user[1].name = 'Alice'
user[1].job = 'Coder'
user[1]....
# etc
0

Sau đó, nó gọi hàm tạo cho từng đối tượng được tạo

user[1].name = 'Alice'
user[1].job = 'Coder'
user[1]....
# etc
1

Ví dụ thế giới thực

Trong một kịch bản trong thế giới thực, hàm tạo thực hiện những điều hữu ích cho đối tượng mới được tạo. Ví dụ, một constructor cho Car. Nó đặt giá trị mặc định của các biến như số bánh xe, số cửa

Nếu bạn định nghĩa một lớp Car, lớp này đặt một số biến đối tượng [lưu ý self được sử dụng để chỉ các giá trị của đối tượng], nó sẽ được đặt khi tạo

user[1].name = 'Alice'
user[1].job = 'Coder'
user[1]....
# etc
2

Sau đó, nếu bạn tạo một số đối tượng và yêu cầu các biến đối tượng được hiển thị, chúng đã được đặt sẵn [vì chúng tôi đặt chúng trong hàm tạo

__ init __ có phải là hàm tạo không?

Phương thức đặc biệt __init__ là hàm tạo của Python . Với sự hiểu biết về lập trình hướng đối tượng và các lớp, bây giờ chúng ta hãy xem cách phương thức __init__ hoạt động trong chương trình Python.

Hàm tạo __ new __ có trong Python không?

Trong Python, khái niệm đó được chia thành hàm tạo và hàm khởi tạo. Và bạn có thể đoán, __new__ là hàm tạo và __init__ là hàm khởi tạo.

Hàm tạo có thể có kiểu dữ liệu không?

Có, bạn có thể làm điều đó .

Hàm tạo mặc định trong Python là gì?

Python sẽ cung cấp hàm tạo mặc định nếu không có hàm tạo nào được xác định. Trong Python, chúng ta có ba loại hàm tạo mặc định, hàm tạo không tham số hóa và hàm tạo có tham số hóa. Sử dụng self, chúng ta có thể truy cập biến đối tượng và phương thức đối tượng của đối tượng. Đối số đầu tiên self đề cập đến đối tượng hiện tại

Chủ Đề