Một lớp có thể trả về một giá trị python không?
Một lớp có thể trả về một giá trị python không?

Video: Một lớp có thể trả về một giá trị python không?

Video: Một lớp có thể trả về một giá trị python không?
Video: Cách viết và sử dụng hàm trong Python từ a tới z 2024, Có thể
Anonim

MỘT giá trị không phải là một cái gì đó khác với một đối tượng trong Python . Khi bạn gọi một lớp đối tượng (như MyClass () hoặc list ()), nó trả lại một ví dụ của điều đó lớp . Khi bạn in một đối tượng (tức là lấy biểu diễn chuỗi của một đối tượng), phương thức ma thuật _str_ hoặc _repr_ của đối tượng đó được gọi và giá trị trả lại đã in.

Tương tự, bạn có thể hỏi, hàm tạo có thể trả về một giá trị trong Python không?

Python mong đợi constructor đến trở lại Không có và không thành công nếu nó trả lại còn gì nữa không. Trong Smalltalk, mới không phải là một từ khóa; đó là một thông điệp bạn gửi đến một lớp (bản thân nó là một đối tượng). Phương thức mới của lớp tạo ra một đối tượng và trả lại nó.

Bên cạnh trên, một hàm có thể trả về một lớp không? Nếu một phương pháp hoặc hàm trả về một đối tượng của một lớp mà không có hàm tạo bản sao công khai, chẳng hạn như ostream lớp , nó phải trở lại một tham chiếu đến một đối tượng. Một số phương pháp và chức năng , chẳng hạn như toán tử gán quá tải, có thể trở lại hoặc một đối tượng hoặc một tham chiếu đến một đối tượng.

Sau đó, câu hỏi đặt ra là _ init _ có thể trả về giá trị không?

_trong đó_ phương pháp trả lại Một giá trị Các _trong đó_ phương thức của một lớp được sử dụng để khởi tạo các đối tượng mới chứ không phải tạo chúng. Như vậy, nó không nên trở lại không tí nào giá trị . Trở về Không có gì đúng theo nghĩa là không có lỗi thời gian chạy sẽ xảy ra, nhưng nó gợi ý rằng giá trị trả lại là có ý nghĩa, mà nó không phải là.

Làm cách nào để bạn trả về một đối tượng trong Python?

Các trở lại tuyên bố làm cho một con trăn hàm để thoát và trả lại một giá trị cho người gọi của nó. Mục tiêu của các chức năng nói chung là thu nhận đầu vào và trở lại thứ gì đó. MỘT trở lại một khi được thực thi, ngay lập tức dừng thực thi một hàm, ngay cả khi nó không phải là câu lệnh cuối cùng trong hàm.

Đề xuất: