Cách tạo một lớp trong Python (Lập trình hướng đối tượng)
Tìm hiểu cách tạo một lớp trong Python. Nắm vững hàm tạo __init__, các phương thức phiên bản, từ khóa self và khởi tạo đối tượng.
Tổng quan
Lập trình hướng đối tượng (OOP) là một mô hình mạnh mẽ được sử dụng để mô hình hóa các thực thể trong thế giới thực, cấu trúc ứng dụng và thúc đẩy khả năng sử dụng lại mã. Trong Python, mọi thứ đều là một đối tượng và các lớp là bản thiết kế mà từ đó các đối tượng riêng lẻ được tạo ra. Việc tạo một lớp cho phép bạn gộp các thuộc tính và hàm dữ liệu lại với nhau.
Để định nghĩa một lớp, bạn sử dụng từ khóa `class` theo sau là tên lớp (thường được viết bằng PascalCase). Bên trong lớp, phương thức quan trọng nhất là hàm tạo: `__init__(self, ...)`. Phương thức ma thuật đặc biệt này được tự động thực thi khi bạn khởi tạo lớp, khởi tạo các thuộc tính dữ liệu ban đầu của đối tượng.
Tham số `self` đại diện cho phiên bản cụ thể của lớp mà bạn hiện đang tạo hoặc sửa đổi. Mọi phương thức cá thể trong lớp phải chấp nhận `self` làm đối số đầu tiên. Các phương thức thực thể là các hàm được xác định bên trong lớp và hoạt động trên các thuộc tính của đối tượng, cho phép đóng gói logic một cách rõ ràng.
Đầu ra mã & thực thi
Tập lệnh này minh họa việc tạo một lớp, xác định các thuộc tính, các phương thức thực thể của lớp và tạo các đối tượng.
# 1. Defining a class
class User:
def __init__(self, username, email):
self.username = username
self.email = email
self.active = True # Default attribute
def get_info(self):
status = "Active" if self.active else "Inactive"
return f"User: {self.username} | Email: {self.email} | Status: {status}"
# 2. Instantiating objects of the class
user1 = User("codeguy", "guy@example.com")
user2 = User("pygirl", "girl@example.com")
# 3. Accessing attributes and invoking methods
print(user1.get_info())
print(user2.username, "has email", user2.email)User: codeguy | Email: guy@example.com | Status: Active
pygirl has email girl@example.comTriển khai từng bước
- Sử dụng từ khóa class để khai báo mẫu lớp.
- Xác định hàm tạo __init__(self, ...) để thiết lập các thuộc tính ban đầu.
- Thêm các phương thức phiên bản chấp nhận self làm tham số đầu tiên để hoạt động với trạng thái đối tượng.
- Gọi ClassName(...) để khởi tạo và tạo một thể hiện đối tượng mới.
Câu hỏi thường gặp
Tham số self thể hiện điều gì?
Nó đề cập đến trường hợp cụ thể của đối tượng được tạo hoặc thao tác. Nó được yêu cầu để liên kết các thuộc tính với thể hiện.
Một lớp có thể có các thuộc tính được chia sẻ trên tất cả các phiên bản không?
Vâng, đây là những thuộc tính của lớp. Xác định chúng trực tiếp dưới tiêu đề lớp (bên ngoài __init__) và truy cập chúng bằng ClassName.attribute.
Chủ đề liên quan
Tìm hiểu cách xử lý các ngoại lệ trong Python bằng cách sử dụng các khối thử, ngoại trừ, khác và cuối cùng. Viết mã Python không có lỗi và chống lỗi.
Cách sử dụng tính năng hiểu danh sách trong PythonTìm hiểu cách sử dụng tính năng hiểu danh sách trong Python. Viết các vòng lặp ngắn gọn, áp dụng các bộ lọc có điều kiện và xây dựng ma trận bằng cú pháp trực quan rõ ràng.
Tài nguyên Python được đề xuất
Mở rộng kiến thức của bạn với các hướng dẫn tương tác, bảng ghi chú và so sánh mã có liên quan.
Giải thích về biến và kiểu dữ liệu trong Python
Hiểu các biến Python và các kiểu dữ liệu cốt lõi (chuỗi, số nguyên, số float, boolean). Hướng dẫn đầy đủ cho người mới bắt đầu về gán bộ nhớ trong Python.
Bảng cheat phương pháp từ điển Python
Tìm hiểu các phương pháp từ điển Python. Hướng dẫn tham khảo đầy đủ về việc chèn, truy xuất, cập nhật và kiểm tra cặp khóa-giá trị.
Python vs JavaScript: Ngôn ngữ lập trình nào tốt nhất?
So sánh toàn diện giữa Python và JavaScript. Khám phá sự khác biệt về cú pháp, hiệu suất, trường hợp sử dụng (phụ trợ so với giao diện người dùng) và các ví dụ về mã hóa.