Class/Object trong Python

Bởi Kiên Smart Data
0 Nhận xét

Ở bài này ta sẽ tìm hiểu về Lớp/Đối tượng trong python.Một tính chất quan trọng giúp ta làm việc dễ dàng hơn với python

Class/Object trong 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à một đối tượng, với các thuộc tính và phương thức của nó.
  • Lớp giống như một hàm tạo đối tượng hoặc một “bản thiết kế” để tạo đối tượng.

Tạo một Class

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

Ví dụ: Tạo một lớp có tên MyClass, với thuộc tính có tên x:

class MyClass: x = 5 

Tạo đối tượng

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

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

p1 = MyClass() print(p1.x) 

Hàm __init__()

Các ví dụ trên là các lớp và đối tượng ở dạng đơn giản nhất và không thực sự hữu ích trong các ứng dụng thực tế.

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

Tất cả các lớp đều có một hàm gọi là __init__(), hàm này luôn được thực thi khi lớp được khởi tạo.

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 đối tượng được tạo:

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

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

Lưu ý: Hàm này __init__()được gọi tự động mỗi khi lớp được sử dụng để tạo đối tượng mới.

Hàm __str__()

Hàm __str__() kiểm soát những gì sẽ được trả về khi đối tượng lớp được biểu diễn dưới dạng một chuỗi.

Nếu hàm __str__() không được đặt, biểu diễn chuỗi của đối tượng sẽ được trả về:

Ví dụ: Biểu diễn chuỗi của một đối tượng KHÔNG CÓ hàm __str__():

class Person: def __init__(self, name, age): self.name = name self.age = age p1 = Person("John", 36) print(p1) Ví dụ: Biểu diễn chuỗi của một đối tượng VỚI hàm __str__(): class Person: def __init__(self, name, age): self.name = name self.age = age def __str__(self): return f"{self.name}({self.age})" p1 = Person("John", 36) print(p1) 

Phương thức của đối tượng

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

Chúng ta hãy tạo một phương thức trong lớp Person:

Ví dụ: Chèn một hàm in lời chào và thực thi 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("John", 36) p1.myfunc() 

Lưu ý: Tham số này selflà tham chiếu đến phiên bản hiện tại của lớp và được sử dụng để truy cập các biến thuộc lớp.

Tham số đại diện cho chính Object

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

Nó không cần phải được đặt tên self, bạn có thể gọi nó là gì bạn thích, nhưng nó phải là tham số đầu tiên của bất kỳ hàm nào trong lớp:

Ví dụ: Sử dụng các từ 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("John", 36) p1.myfunc() 

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

Bạn có thể sửa đổi thuộc tính trên các đối tượng như thế này:

 Ví dụ: Đặt tuổi của p1 thành 40:

p1.age = 40

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

Bạn có thể xóa thuộc tính trên đối tượng bằng cách sử dụng từ khóa del

del p1.age

Xoá đối tượng

Bạn có thể xóa các đối tượng bằng cách sử dụng từ khóa del:

del p1

Nếu bạn là newbie có thể tham khảo bài viết này để tìm hiểu lộ trình học DA trong 3 tháng của SmartData.

Nếu bạn thấy bài viết hay và hữu ích, bạn có thể tham gia các kênh sau của SmartData để nhận được nhiều hơn nữa:

Bài viết liên quan

Để lại nhận xét

Copyright @2022 – Bản quyền thuộc Học viện dữ lệu Smart Data