Lớp và đối tượng Python

Lớp/Đối tượng Python

Python là một ngôn ngữ lập trình hướng đối tượng.

Hầu hết mọi thứ trong Python đều là đối tượng, có thuộc tính và phương pháp.

Lớp (Class) tương tự như hàm cấu hình đối tượng, hoặc là "蓝图" để tạo đối tượng.

Tạo lớp

Để tạo lớp, hãy sử dụng class Từ khóa:

Mô Hình

Sử dụng thuộc tính có tên là x để tạo lớp có tên là MyClass:

class MyClass:
  x = 5

Chạy Mô Hình

Tạo đối tượng

Bây giờ chúng ta có thể sử dụng lớp có tên là myClass để tạo đối tượng:

Mô Hình

Tạo một đối tượng có tên là p1 và in giá trị của x:

p1 = MyClass()
print(p1.x)

Chạy Mô Hình

__init__() hàm

Ví dụ trên là hình thức đơn giản nhất của lớp và đối tượng, trong ứng dụng thực tế nó không thực sự có ích.

Để hiểu ý nghĩa của lớp, chúng ta phải trước tiên hiểu các hàm sẵn có. __init__() hàm.

Mọi lớp đều có một hàm có tên là __init__(), nó luôn được thực hiện khi khởi tạo lớp.

Sử dụng hàm __init__() để gán giá trị cho thuộc tính đối tượng, hoặc các thao tác khác cần thực hiện khi tạo đối tượng:

Mô Hình

Tạo lớp có tên là Person, sử dụng hàm __init__() để gán giá trị cho name và age:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age
p1 = Person("Bill", 63)
print(p1.name)
print(p1.age)

Chạy Mô Hình

Chú thích:Mỗi khi sử dụng lớp để tạo một đối tượng mới, nó sẽGọi tự động __init__() hàm.

Phương pháp đối tượng

Đối tượng cũng có thể chứa các phương pháp. Các phương pháp trong đối tượng là các hàm thuộc về đối tượng.

Hãy tạo một phương pháp trong lớp Person:

Mô Hình

Chúng ta thêm một hàm in chào hỏi và thực hiện nó trên đối tượng p1:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age
  def myfunc(self):
    print("Hello my name is " + self.name)
p1 = Person("Bill", 63)
p1.myfunc()

Chạy Mô Hình

Hướng dẫn:self 参数是对类的当前实例的 tham chiếu, dùng để truy cập vào các biến thuộc về lớp đó.

Tham số self

self Tham số là tham chiếu đến đối tượng hiện tại của lớp, được sử dụng để truy cập các biến thuộc về lớp đó.

Nó không cần phải được đặt tên là self,Bạn có thể gọi nó tùy ý, nhưng nó phải là hàm của lớp nào đó trong lớp.Tham số đầu tiên:

Mô Hình

Sử dụng từ khóa mysillyobject và abc thay vì self:

class Person:
  def __init__(mysillyobject, name, age):
    mysillyobject.name = name
    mysillyobject.age = age
  def myfunc(abc):
    print("Hello my name is " + abc.name)
p1 = Person("Bill", 63)
p1.myfunc()

Chạy Mô Hình

Sửa thuộc tính đối tượng

Bạn có thể修改 đối tượng như sau:

Mô Hình

Đặt tuổi của p1 thành 40:

p1.age = 40

Chạy Mô Hình

Xóa thuộc tính đối tượng

Bạn có thể sử dụng del Từ khóa xóa thuộc tính đối tượng:

Mô Hình

Xóa thuộc tính age của đối tượng p1:

del p1.age

Chạy Mô Hình

Xóa đối tượng

Sử dụng del Từ khóa xóa đối tượng:

Mô Hình

Xóa đối tượng p1:

del p1

Chạy Mô Hình

Câu lệnh pass

Định nghĩa lớp không thể để trống, nhưng nếu bạn có lý do nào đó viết câu định nghĩa lớp không có nội dung, hãy sử dụng câu lệnh pass để tránh lỗi.

Mô Hình

class Person:
  pass

Chạy Mô Hình