DANH MỤC: PYTHON NÂNG CAO

Bài 1: Class và cách khai báo class trong Python


Mở đầu cho series học lập trình Python nâng cao chúng ta sẽ tìm hiểu về thực hành hướng đối tượng trong Python, ở series này mình sẽ không nhắc nhiều về lý thuyết hướng đối tượng nữa mà nếu bạn nào chưa biết thì có thể tham khảo ở đây.

1, Khai báo Class trong Python.

Như các bạn đã được tìm hiểu thì một đối tượng có thể có một hoặc nhiều class và trong mỗi class thì lại chứa một hoặc nhiều các thuộc tính và các phương thức... Để khai báo một class trong Python thì mọi người sử dụng cú pháp sau:

class className:
    # code

Trong đó, className là tên của class mà bạn muốn khai báo.

VD: Mình sẽ khai báo class Person.

class Person:
    # code

2, Khai báo thuộc tính trong Class.

Như ở trên mình có nói thì một class có thể chứa một hoặc rất nhiều các thuộc tính bên trong. Thuộc tính trong class, cũng tương tự như biến ở trong lập trình hướng thủ tục. Để khai báo một thuộc tính trong class thì mọi người chỉ cần khai báo như khai báo một biến bình thường và lưu ý là nó phải nằm trong phạm vi của class.

VD: Mình sẽ khai báo thêm một số thuộc tính cho class Person ở trên.

class Person:
    name = "Vũ Thanh Tài";
    age = 22;
    male = True

3, Khai báo phương thức trong Class.

Phương thức ở trong hướng đối tượng cũng tương tự như hàm ở trong lập trình hướng thủ tục và một class thì có thể không có hoặc có nhiều phương thức. Để khai báo một phương thức trong Python mọi người chỉ cần khai báo như khai báo một hàm bình thường, và lưu ý là phải khai báo trong phạm vi của class.

VD: Mình sẽ khai báo thêm một số phương thức cho class Person ở trên.

class Person:
    # thuộc tính
    name = "Vũ Thanh Tài";
    age = 22;
    male = True
    # phương thức
    def setName(self, name):
        self.name = name
    
    def getName(self):
        return self.name
    
    def setAge(self, age):
        self.age = age
    
    def getAge(self):
        return self.age
    
    def setMale(self, male):
        self.male = male
    
    def getMale(self):
        return self.male

Chú ý:Ở trong ví dụ trên mình có sử dụng từ khóa self. Thì từ khóa self ở đây dùng để thể hiện lại chính class đang chứa nó, và dựa vào nó thì chúng ta có thể truy cập vào các phần tử đang có trong class hiện tại.

4, Khởi tạo class.

Sau khi đã khai báo được class trong Python rồi, thì để khởi tạo nó mọi người sử dụng cú pháp sau:

variableName = className()

Trong đó:

  • variableName là biến mà bạn muốn thể hiện lại đối tượng.
  • className là class mà bạn muốn khởi tạo.

VD: Mình sẽ khởi tạo class person ở trên.

person = Person()

 Sau khi đã khởi tạo được class rồi thì biến được instane lại class đó sẽ có thể truy cập được các phần tử được cho phép trong class đó. Bằng cách sử dụng dấu . theo cú pháp sau:

# truy cap den thuoc tinh
object.propertyName

#truy cap den phuong thuc
object.methodName()

Trong đó:

  • object là biến thể hiện lại object.
  • propertyName là tên thuộc tính mà bạn muốn truy xuất.
  • methodName là tên phương thức mà bạn muốn truy xuất.

VD: Mình sẽ truy xuất đến các thuộc tính và phương thức trong class Person.

# instance
person = Person()
# properties
print(person.name) # Vũ Thanh Tài
print(person.age) # 22
print(person.male) # True
# methods
person.setName("Nguyễn Thị HH")
print(person.getName()) # Nguyễn Thị HH

person.setAge(22)
print(person.getAge()) # 22 

person.setMale(False)
print(person.getMale()) # False

 5, Lời kết.

Bài này chúng ta tạm kết thúc ở đây thôi, các bạn nhớ ôn thật kỹ phần này nhé, sau này sẽ dùng nhiều đấy!

Nguồn: Toidicode.com

Thông tin tác giả

Vũ Thanh Tài

Vũ Thanh Tài

Biển học vô biên, quay đầu là dại!

Hãy tham gia group facebook để cùng giao lưu chia sẻ kiến thức! Tham Gia