Hướng dẫn python constructor - hàm tạo python
Constructor trong Python là một loại phương thức (hàm) đặc biệt được sử dụng để khởi tạo các thể hiện của lớp. Constructor có thể có hai loại. là một loại phương thức (hàm) đặc biệt được sử dụng để khởi tạo các thể hiện của lớp. Constructor có thể có hai loại. Show
Định nghĩa contructor được thực thi khi chúng ta tạo đối tượng của lớp này. Nội dung chính
Tạo contructor trong PythonTrong python, phương thức __ init __ mô phỏng contructor của lớp. Phương thức này được gọi khi lớp được khởi tạo. Chúng ta có thể chuyển bất kỳ số lượng đối số nào tại thời điểm tạo đối tượng lớp, tùy thuộc vào định nghĩa __ init __. Nó chủ yếu được sử dụng để khởi tạo các thuộc tính của lớp. Mỗi lớp phải có một constructor. Ví dụ sau khởi tạo các thuộc tính của lớp Employee. class Employee: def __init__(self, name, id): self.id = id; self.name = name; def display (self): print("ID: %d \nName: %s" % (self.id, self.name)) emp1 = Employee("Vinh", 101) emp2 = Employee("Trung", 102) # gọi phương thức display() để hiển thị thông tin employee 1 emp1.display(); # gọi phương thức display() để hiển thị thông tin employee 2 emp2.display(); Kết quả: ID: 101 Name: Vinh ID: 102 Name: Trung Ví dụ: Đếm số lượng đối tượng của một lớpclass Student: count = 0 def __init__(self): Student.count = Student.count + 1 s1 = Student() s2 = Student() s3 = Student() print("Số lượng sinh viên là:", Student.count) Kết quả: Ví dụ: Đếm số lượng đối tượng của một lớpclass Student: # Constructor không tham số def __init__(self): print("Đây là constructor không tham số") def show(self, name): print("Hello", name) student = Student() student.show("The Mac") Kết quả: Ví dụ: Đếm số lượng đối tượng của một lớp Ví dụ: constructor không tham số trong Pythonclass Student: # Constructor tham số def __init__(self, name): print("Đây là constructor tham số.") self.name = name def show(self): print("Hello", self.name) student = Student("The Mac") student.show() Kết quả: Đây là constructor tham số. Hello The Mac Ví dụ: Đếm số lượng đối tượng của một lớpVí dụ: constructor không tham số trong Python
delattr(obj, name) class Student: def __init__(self, name, id, age): self.name = name; self.id = id; self.age = age # tạo đối tượng của lớp Student s = Student("Trung", 101, 22) # in thuộc tính name của đối tượng s print(getattr(s, 'name')) # gán giá trị của age cho 23 setattr(s, "age", 23) # in giá trị của age print(getattr(s, 'age')) # true nếu student chứa thuộc tính id print(hasattr(s, 'id')) # xóa thuộc tính age delattr(s, 'age') # bắn ra lỗi nếu age đã bị xóa print(s.age) Kết quả: Trung 23 True print(s.age) AttributeError: 'Student' object has no attribute 'age' Ví dụ: Đếm số lượng đối tượng của một lớpVí dụ: constructor không tham số trong Python Đây là constructor không tham số Hello The Mac
delattr(obj, name) class Student: def __init__(self, name, id, age): self.name = name; self.id = id; self.age = age def display_details(self): print("Name:%s, ID:%d, age:%d" % (self.name, self.id)) s = Student("Trung", 101, 22) print(s.__doc__) print(s.__dict__) print(s.__module__) Kết quả: ID: 101 Name: Vinh ID: 102 Name: Trung0 |