Phương thức lớp có nghĩa là gì trong Python?

Để sử dụng Phương thức lớp trong Python, chúng ta phải sử dụng trình trang trí phương thức Lớp '@classmethod'. Trình trang trí phương thức lớp được định nghĩa ngay trước định nghĩa hàm. Lớp được truyền vào hàm dưới dạng tham số và nó phải là tham số đầu tiên. Chúng tôi sử dụng từ khóa 'cls' để chuyển đến hàm. Cls biểu thị rằng lớp được truyền dưới dạng biến. Điều này được thực hiện để chúng ta có thể sửa đổi biến của lớp và đối tượng. Vì mọi thứ đều là một đối tượng trong Python

cú pháp

class anyName:
@classmethod
def methodName(cls, arg1,arg2 ….):
----
----
(lines of code)

Classmethod() hoạt động như thế nào trong Python?

Phương thức lớp chỉ có quyền truy cập vào các tham số của lớp và đối số. Phương thức lớp không có đối số tự, vì vậy nó chỉ có thể truy cập vào chính lớp đó và đối tượng đại diện cho lớp. Khi chúng ta tạo một thể hiện của lớp và gọi phương thức của lớp, chúng ta sẽ không thể truy cập vào đối tượng tự;

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác

Khi chúng ta muốn làm việc trên các phương thức xuất xưởng, các phương thức lớp được khuyến nghị vì nó trả về đối tượng lớp. Trình trang trí phương thức lớp cho phép chúng ta gọi các hàm trong các lớp mà không cần phải khởi tạo chúng. Trong khi sử dụng phương thức lớp, xin lưu ý rằng nó nhận lớp thấp nhất của chủ đề gọi và nó có thể dẫn đến hệ lụy khi cố gắng cập nhật dữ liệu của lớp thông qua lớp được truyền vào

Chúng ta có thể phương thức lớp đó luôn triển khai mức thấp nhất trong cây thể hiện. Sử dụng một phương thức của lớp là phù hợp nhất khi đang xử lý dữ liệu có thể khác nhau đối với từng lớp trong cấu trúc phân cấp

Các ví dụ để triển khai classmethod trong Python

Dưới đây là các ví dụ về classmethod trong Python

Gói phát triển phần mềm tất cả trong một(hơn 600 khóa học, hơn 50 dự án)

Phương thức lớp có nghĩa là gì trong Python?
Phương thức lớp có nghĩa là gì trong Python?
Phương thức lớp có nghĩa là gì trong Python?
Phương thức lớp có nghĩa là gì trong Python?

Phương thức lớp có nghĩa là gì trong Python?
Phương thức lớp có nghĩa là gì trong Python?
Phương thức lớp có nghĩa là gì trong Python?
Phương thức lớp có nghĩa là gì trong Python?

Giá
Xem các khóa học

Hơn 600 khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời
4. 6 (86.629 xếp hạng)

Ví dụ 1

Mã số

class sampleclass():
def __init__(self, name):
self.studentname = name
@classmethod
def squareroot(cls, number):
sampleclass.result = number * number
sampleclass.squareroot(5)
print(sampleclass.result)

đầu ra.  

Phương thức lớp có nghĩa là gì trong Python?

Chương trình trên tính căn bậc hai của số. Chúng tôi đã tạo lớp 'sampleclass' và định nghĩa một hàm tạo bên trong nó. Chúng tôi đã định nghĩa trình trang trí phương thức lớp trước phương thức. Chúng tôi đã tạo một phương thức 'squareroot' và tham số đầu tiên là cls, biểu thị lớp và tham số số đã truyền. Chúng tôi cũng đã tạo một 'kết quả' cấp độ lớp đang lưu trữ đầu ra

Bây giờ bạn có thể gọi phương thức bằng tên lớp. tên phương thức và truyền tham số

Ví dụ #2

Mã số

class Car:
def __init__(self, features):
self.features = features
def __repr__(self):
return f'Car({self.features})'
@classmethod
def audi(cls):
return cls(['ABS', 'Disk Brakes'])
@classmethod
def mercedes(cls):
return cls(['ABS', 'Disk Brakes', 'GPS', 'Alloy Wheels'])
print(Car.audi())
print(Car.mercedes())

đầu ra

Phương thức lớp có nghĩa là gì trong Python?

Trong chương trình trên, chúng tôi đã tạo một lớp 'Xe hơi' và chúng tôi cũng đã định nghĩa một hàm tạo. Chúng tôi đã định nghĩa phương thức hai lớp 'audi' và 'mercedes' và chúng tôi đã tạo các thể hiện của lớp. Các giá trị này sẽ được trả về khi chúng ta gọi phương thức lớp của chúng ta. Chúng ta có thể gọi lớp Audi và Mercedes của mình bằng cách gọi lớp Car;

Ví dụ #3

Mã số

class Organisation:
intern = 0
increment = 10000
def __init__(self, firstname, lastname, salary):
self.firstname = firstname
self.lastname = lastname
self.salary = salary
@classmethod
def set_increment(cls, amount):
cls.increment = amount
emp_1 = Organisation('Corey', 'Schafer', 50000)
emp_2 = Organisation('Test', 'Organisation', 60000)
Organisation.set_increment(15000)
print(Organisation.increment)
print(emp_1.increment)
print(emp_2.increment)

đầu ra

Phương thức lớp có nghĩa là gì trong Python?

Trong chương trình trên, chúng tôi đã tạo một Tổ chức lớp và tạo hai biến, thực tập và gia tăng. Chúng tôi đã xác định một hàm tự tạo có 3 tham số. Chúng tôi đã xác định phương thức lớp của mình, tạo gia số biến lớp và gán đối số số lượng mà chúng tôi đã chuyển cùng với cls

Chúng tôi đã tạo hai phiên bản tổ chức. Bây giờ chúng tôi nhận xét 'Tổ chức. set_increment(15000)’, sau đó chúng tôi nhận được đầu ra là 10000 cho cả ba lệnh in vì chúng tôi đã chỉ định 10.000 ở cấp lớp. Bây giờ chúng tôi gọi lớp Tổ chức và gọi phương thức lớp của chúng tôi, tôi. e. set_increment. Vì vậy, chúng tôi sẽ tính số tiền trong phương thức lớp và bây giờ nếu chúng tôi chạy nó, tất cả đầu ra sẽ là 15000. Nó xảy ra bởi vì chúng tôi đã chạy phương thức set_increment, tôi. e. phương thức lớp, có nghĩa là bây giờ chúng tôi đang làm việc với lớp thay vì phiên bản và chúng tôi đang đặt số tiền tăng của biến lớp đó bằng với số tiền mà chúng tôi đã chuyển vào đây

Chúng ta cũng có thể chạy một phương thức lớp bằng cách sử dụng thể hiện, nhưng điều đó không có ý nghĩa gì và đó không phải là một cách thực hành tốt. Chúng ta có thể sử dụng phương thức lớp như một hàm tạo thay thế và cung cấp nhiều cách tạo đối tượng

Phần kết luận

Phương thức lớp rất hữu ích để tạo mã và quản lý mã rất dễ dàng; . Tạo một API với một classmethod rất dễ dàng. Cách sử dụng phương thức lớp tốt nhất là khi chúng ta tạo quá nhiều phương thức và chúng ta muốn gọi các phương thức đó bằng cách sử dụng lớp chứ không phải đối tượng

Bài viết được đề xuất

Đây là hướng dẫn về classmethod trong Python. Ở đây chúng tôi thảo luận về tổng quan ngắn gọn về classmethod trong Python và các ví dụ của nó, cùng với việc triển khai mã của nó. Bạn cũng có thể xem qua các bài viết được đề xuất khác của chúng tôi để tìm hiểu thêm –

__ lớp __ có nghĩa là gì trong Python?

__class__ là một thuộc tính trên đối tượng đề cập đến lớp mà đối tượng được tạo ra từ đó . Một. __lớp__ # Đầu ra.

phương pháp lớp giải thích là gì?

Một phương thức của lớp là một phương thức có thể được gọi mà không cần tham chiếu đến bất kỳ thể hiện đối tượng nào ; . Thuật ngữ phương thức thường dùng để chỉ một phương thức thể hiện. Cụm từ cụ thể hơn phương thức lớp được sử dụng để chỉ các phương thức lớp.

Khi phương thức lớp được gọi trong Python?

Phương thức của lớp là phương thức được chia sẻ giữa tất cả các đối tượng. Để gọi một phương thức của lớp, hãy đặt lớp làm đối số đầu tiên . Các phương thức của lớp có thể được gọi từ các thể hiện và từ chính lớp đó. Tất cả đều sử dụng cùng một phương pháp.

__ init __ có phải là một phương thức lớp không?

Hàm __init__ được gọi mỗi khi một đối tượng được tạo từ một lớp. Phương thức __init__ cho phép lớp khởi tạo các thuộc tính của đối tượng và không phục vụ mục đích nào khác. Chỉ được sử dụng trong lớp .