Computer >> Máy Tính >  >> Lập trình >> Python

Các phương thức tĩnh trong một lớp Python là gì?


Bất kỳ lớp python nào cũng có ba loại phương thức như phương thức thể hiện, phương thức lớp và phương thức tĩnh.

Ví dụ

Xem xét mã

class OurClass:
    def method(self):
        return 'instance method called', self
     @classmethod
    def classmethod(cls):
        return 'class method called', cls
     @staticmethod
    def staticmethod():
        return 'static method called'

Phương thức thứ ba, OurClass.staticmethod được đánh dấu bằng trình trang trí @staticmethod để gắn cờ nó là một phương thức tĩnh.

Loại phương thức này không nhận tham số self hay cls nhưng nó có thể chấp nhận một số lượng tùy ý các tham số khác.

Do đó, một phương thức tĩnh không thể sửa đổi trạng thái đối tượng cũng như trạng thái lớp. Các phương thức tĩnh bị hạn chế về dữ liệu nào chúng có thể truy cập - và chúng chủ yếu là một cách để tạo vùng chứa tên cho các phương thức của bạn. Chúng ta có thể gọi staticmethod từ mã trên như sau

>>> obj = OurClass()
>>> obj.staticmethod()
'static method called'