Nhận lớp phương thức Python
classmethod() là một hàm sẵn có trong Python, trả về một phương thức lớp cho một hàm nhất định. ; Show
Bạn cũng có thể sử dụng trình trang trí @classmethod cho định nghĩa classmethod cú pháp. @classmethod def fun(cls, arg1, arg2, ...): Ở đâu,
các phương thức classmethod() được liên kết với một lớp chứ không phải là một đối tượng. Các phương thức lớp có thể được gọi bởi cả lớp và đối tượng. Các phương thức này có thể được gọi với một lớp hoặc với một đối tượng. Phương thức lớp so với Phương thức tĩnh
Ví dụ về classmethod trong Pythonví dụ 1. Tạo một classmethod đơn giảnTrong ví dụ này, chúng ta sẽ xem cách tạo phương thức lớp, để làm điều này, chúng ta đã tạo một lớp có tên chuyên viên máy tính với biến thành viên là khóa học và tạo một hàm buy để in đối tượng Bây giờ chúng tôi đã thông qua phương pháp chuyên viên máy tính. mua thành classmethod chuyển đổi các phương thức thành một phương thức lớp và sau đó chúng ta gọi hàm lớp mua mà không tạo đối tượng hàm Python3
Purchase course : DSA0 Purchase course : DSA1
Purchase course : DSA3 Purchase course : DSA4 Purchase course : DSA5_______1_______6 Purchase course : DSA7 Purchase course : DSA8_______1_______9
The name is : Geeksforgeeks0_______1_______0 The name is : Geeksforgeeks2 The name is : Geeksforgeeks3 The name is : Geeksforgeeks4 đầu ra Purchase course : DSA ví dụ 2. Tạo phương thức lớp bằng classmethod()Python3The name is : Geeksforgeeks5
The name is : Geeksforgeeks7
The name is : Geeksforgeeks9
Name : mayank Age : 211_______1_______0 Name : mayank Age : 213
Name : mayank Age : 215
Purchase course : DSA3 Name : mayank Age : 218 Purchase course : DSA5_______1_______6 Purchase course : DSA7 class C(object): @classmethod def fun(cls, arg1, arg2, ...): ....2_______28_______3
class C(object): @classmethod def fun(cls, arg1, arg2, ...): ....4 class C(object): @classmethod def fun(cls, arg1, arg2, ...): ....5 class C(object): @classmethod def fun(cls, arg1, arg2, ...): ....6 class C(object): @classmethod def fun(cls, arg1, arg2, ...): ....7 Purchase course : DSA0 The name is : Geeksforgeeks2 21 25 True0
21 25 True1 21 25 True2 21 25 True3 đầu ra The name is : Geeksforgeeks ví dụ 3. Phương thức xuất xưởng sử dụng phương thức LớpViệc sử dụng hàm classmethod() được sử dụng trong các mẫu thiết kế của nhà máy nơi chúng ta muốn gọi nhiều hàm với tên lớp thay vì một đối tượng Python321 25 True4 21 25 True5 21 25 True6 21 25 True7 21 25 True8 21 25 True9
Purchase course : DSA5_______75_______5 class 9Purchase course : DSA0 Name : mayank Age : 211 Purchase course : DSA5_______75_______5 geeks: 4Purchase course : DSA0 geeks: 6
Purchase course : DSA5_______77_______9 6course 1course 2 course 3
Purchase course : DSA5_______1_______6 Purchase course : DSA7 Purchase course : DSA02_______1_______03 class 5Purchase course : DSA05 Purchase course : DSA06 Purchase course : DSA03 class 5Purchase course : DSA09
Purchase course : DSA10_______1_______0 Purchase course : DSA12 Purchase course : DSA13_______1_______03 Purchase course : DSA15 Purchase course : DSA16 Purchase course : DSA17 đầu ra Name : mayank Age : 21 Trình trang trí @classmethodTrình trang trí @classmethod là một trình trang trí chức năng tích hợp, là một biểu thức được đánh giá sau khi chức năng của bạn được xác định. Kết quả của đánh giá đó làm lu mờ định nghĩa chức năng của bạn. Một phương thức lớp nhận lớp làm đối số đầu tiên ngầm định, giống như một phương thức thể hiện nhận thể hiện cú pháp class C(object): @classmethod def fun(cls, arg1, arg2, ...): .... Ở đâu,
Ghi chú
Trong ví dụ dưới đây, chúng tôi sử dụng phương pháp tĩnh () và phương pháp lớp () để kiểm tra xem một người có phải là người lớn hay không __ nhận __ trong Python là gì?__get__ " Được gọi để lấy thuộc tính của lớp chủ sở hữu (quyền truy cập thuộc tính lớp) hoặc của một thể hiện của lớp đó (quyền truy cập thuộc tính thể hiện)."
__ lớp __ trong Python là gì?__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.
@classmethod trong Python là gì?Phương thức lớp() là một hàm có sẵn trong Python, hàm này trả về một phương thức lớp cho một hàm đã cho . ; . classmethod(hàm) Tham số. Hàm này chấp nhận tên hàm làm tham số. Loại trả lại. Hàm này trả về phương thức lớp đã chuyển đổi. |