Chúng ta có thể viết lớp trong hàm python không?
Python là một ngôn ngữ hoàn toàn hướng đối tượng. Bạn đã làm việc với các lớp và đối tượng ngay từ đầu của các hướng dẫn này. Mỗi phần tử trong chương trình Python là một đối tượng của một lớp. Một số, chuỗi, danh sách, từ điển, v.v. , được sử dụng trong một chương trình là một đối tượng của lớp dựng sẵn tương ứng. Bạn có thể truy xuất tên lớp của các biến hoặc đối tượng bằng phương thức type(), như hình bên dưới Show Thí dụ. Các lớp tích hợp Python Sao chép
Xác định một lớpMột lớp trong Python có thể được định nghĩa bằng từ khóa 8
Theo cú pháp ở trên, một lớp được xác định bằng cách sử dụng từ khóa 8 theo sau tên lớp và toán tử 0 sau tên lớp, điều này cho phép bạn tiếp tục ở dòng thụt lề tiếp theo để xác định các thành viên của lớp. Sau đây là các thành viên trong lớp
Một lớp cũng có thể được định nghĩa mà không cần bất kỳ thành viên nào. Ví dụ sau định nghĩa một lớp rỗng sử dụng từ khóa 1Thí dụ. Xác định lớp Python Sao chép
Khởi tạo lớp sử dụng ký hiệu hàm. Để tạo một đối tượng của lớp, chỉ cần gọi một lớp giống như một hàm không tham số trả về một đối tượng mới của lớp, như hình bên dưới Thí dụ. Tạo một đối tượng của một lớp Sao chép
Ở trên, 2 trả về một đối tượng của lớp 3, được gán cho một biến cục bộ 4. Lớp 3 là một lớp trống vì nó không chứa bất kỳ thành viên nàoThuộc tính lớpThuộc tính lớp là các biến được định nghĩa trực tiếp trong lớp được chia sẻ bởi tất cả các đối tượng của lớp. Các thuộc tính của lớp có thể được truy cập bằng cách sử dụng tên lớp cũng như sử dụng các đối tượng Thí dụ. Xác định lớp Python Sao chép 2Ở trên, 6 là một thuộc tính lớp được định nghĩa bên trong một lớp. Giá trị của 6 sẽ giữ nguyên cho tất cả các đối tượng trừ khi được sửa đổi rõ ràngThí dụ. Xác định lớp Python Sao chép 5Như bạn có thể thấy, một thuộc tính lớp được truy cập bởi 8 cũng như 9. Thay đổi giá trị của thuộc tính lớp bằng tên lớp sẽ thay đổi nó trên tất cả các phiên bản. Tuy nhiên, việc thay đổi giá trị thuộc tính lớp bằng cách sử dụng phiên bản sẽ không ảnh hưởng đến các phiên bản hoặc lớp khácThí dụ. Xác định lớp Python Sao chép 8Ví dụ sau minh họa việc sử dụng thuộc tính lớp 20Thí dụ. Sinh viên. py Sao chép 0Trong ví dụ trên, 20 là một thuộc tính trong lớp Sinh viên. Bất cứ khi nào một đối tượng mới được tạo, giá trị của 20 sẽ tăng thêm 1. Bây giờ bạn có thể truy cập thuộc tính 20 sau khi tạo các đối tượng, như hình bên dướiThí dụ Sao chép 4Người xây dựngTrong Python, phương thức khởi tạo được gọi tự động bất cứ khi nào một đối tượng mới của một lớp được khởi tạo, giống như các hàm tạo trong C# hoặc Java. Hàm tạo phải có tên đặc biệt là 24 và tham số đặc biệt có tên là 25Ghi chú Tham số đầu tiên của mỗi phương thức trong một lớp phải là 25, tham chiếu đến đối tượng gọi. Tuy nhiên, bạn có thể đặt bất kỳ tên nào cho tham số đầu tiên, không nhất thiết phải là 25Ví dụ sau định nghĩa một constructor Thí dụ. Người xây dựng Sao chép 9Bây giờ, bất cứ khi nào bạn tạo một đối tượng của lớp 3, phương thức khởi tạo của lớp 24 sẽ được gọi, như hình bên dướiThí dụ. Constructor Call khi tạo đối tượng Sao chép 0Hàm tạo trong Python được sử dụng để xác định các thuộc tính của một thể hiện và gán giá trị cho chúng Thuộc tính sơ thẩmThuộc tính thể hiện là thuộc tính hoặc thuộc tính gắn liền với một thể hiện của một lớp. Thuộc tính thể hiện được xác định trong hàm tạo Ví dụ sau định nghĩa các thuộc tính thể hiện 50 và 51 trong hàm tạoThí dụ. Thuộc tính sơ thẩm Sao chép 1Một thuộc tính thể hiện có thể được truy cập bằng ký hiệu dấu chấm. 52, như hình bên dướiThí dụ Sao chép 2Bạn có thể đặt giá trị của các thuộc tính bằng cách sử dụng ký hiệu dấu chấm, như hình bên dưới Thí dụ Sao chép 3Bạn có thể chỉ định giá trị của các thuộc tính thể hiện thông qua hàm tạo. Hàm tạo sau bao gồm các tham số tên và tuổi, ngoại trừ tham số 25Thí dụ. Đặt giá trị thuộc tính Sao chép 4Giờ đây, bạn có thể chỉ định các giá trị trong khi tạo phiên bản, như minh họa bên dưới Thí dụ. Truyền các giá trị thuộc tính của Instance trong Constructor Sao chép 5Ghi chú Bạn không cần phải chỉ định giá trị của tham số 25. Nó sẽ được chỉ định nội bộ trong PythonBạn cũng có thể đặt giá trị mặc định cho thuộc tính cá thể. Đoạn mã sau đặt các giá trị mặc định của các tham số hàm tạo. Vì vậy, nếu các giá trị không được cung cấp khi tạo một đối tượng, các giá trị sẽ được gán sau Thí dụ. Đặt giá trị mặc định của thuộc tính Sao chép 6Bây giờ, bạn có thể tạo một đối tượng với các giá trị mặc định, như hình bên dưới Thí dụ. Giá trị mặc định của thuộc tính phiên bản Sao chép 7Truy cập thuộc tính lớp so với thuộc tính cá thể trong Python để biết thêm thông tin Thuộc tính lớpTrong Python, một thuộc tính trong lớp có thể được định nghĩa bằng hàm property() Phương thức 55 trong Python cung cấp giao diện cho các thuộc tính thể hiện. Nó đóng gói các thuộc tính thể hiện và cung cấp một thuộc tính, giống như Java và C#Phương thức 55 lấy các phương thức get, set và delete làm đối số và trả về một đối tượng của lớp 57Ví dụ sau minh họa cách tạo một thuộc tính trong Python bằng cách sử dụng hàm 55Thí dụ. tài sản() Sao chép 8Trong ví dụ trên, 59 trả về đối tượng thuộc tính và gán nó cho 50. Do đó, thuộc tính 50 ẩn thuộc tính thể hiện riêng 82. Thuộc tính 50 được truy cập trực tiếp, nhưng bên trong nó sẽ gọi phương thức 84 hoặc 85, như hình bên dướiThí dụ. tài sản() Sao chép 9Bạn nên sử dụng trình trang trí thuộc tính thay vì phương thức 55phương pháp lớpBạn có thể định nghĩa bao nhiêu phương thức tùy thích trong một lớp bằng cách sử dụng từ khóa 87. Mỗi phương thức phải có tham số đầu tiên, thường được đặt tên là 25, tham chiếu đến phiên bản gọiThí dụ. phương pháp lớp Sao chép 0 89 chỉ là một tên quy ước cho đối số đầu tiên của một phương thức trong lớp. Một phương thức được định nghĩa là 00 nên được gọi là 01 cho đối tượng 02 của lớpPhương thức lớp trên có thể được gọi như một hàm bình thường, như hình bên dưới Thí dụ. phương pháp lớp Sao chép 1Tham số đầu tiên của phương thức không cần đặt tên là 25. Bạn có thể đặt bất kỳ tên nào đề cập đến thể hiện của phương thức gọi. Phương thức 04 sau đây đặt tên cho tham số đầu tiên là 05 thay vì 25 và nó hoạt động hoàn toàn tốtThí dụ. phương pháp lớp Sao chép 2Định nghĩa một phương thức trong lớp mà không có tham số 25 sẽ tạo ra một ngoại lệ khi gọi một phương thứcThí dụ. phương pháp lớp Sao chép 3 4Phương thức có thể truy cập các thuộc tính của cá thể bằng cách sử dụng tham số 25Thí dụ. phương pháp lớp Sao chép 5Bây giờ bạn có thể gọi phương thức, như hình bên dưới Thí dụ. Gọi một phương thức Sao chép 6Xóa thuộc tính, đối tượng, lớpBạn có thể xóa các thuộc tính, đối tượng hoặc chính lớp đó bằng cách sử dụng từ khóa 09, như minh họa bên dưới
Bạn có thể đặt một lớp trong hàm Python không?Các lớp có thể được tạo đơn giản như một tập hợp các hàm . Các chức năng có thể được định nghĩa trong lớp chính xác giống như cách các chức năng thường được tạo. Để gọi các chức năng này, chúng ta cần gọi nó từ lớp.
Tôi có thể đặt một lớp bên trong một hàm không?Một lớp được khai báo bên trong một hàm trở thành cục bộ của hàm đó và được gọi là Lớp cục bộ trong C++ . Tên lớp cục bộ chỉ có thể được sử dụng cục bộ. e. , bên trong chức năng chứ không phải bên ngoài nó. Các phương thức của một lớp cục bộ chỉ được định nghĩa bên trong nó. Một lớp cục bộ có thể có các hàm tĩnh, nhưng không phải các thành viên dữ liệu tĩnh. |