Bạn có thể khắc phục điều đó.
Liên kết PYTHONSTARTUPđến một tập tin python với sau đây
# Make exit work as expected
type(exit).__repr__ = type(exit).__call__
Cái này hoạt động ra sao?
Dòng lệnh python là một vòng lặp đọc-đánh giá-in, đó là khi bạn gõ văn bản, nó sẽ đọc văn bản đó, đánh giá nó và cuối cùng là in kết quả.
Khi bạn gõ exit()nó sẽ ước lượng cho một đối tượng có thể gọi được của kiểu site.Quittervà gọi __call__hàm của nó sẽ thoát khỏi hệ thống. Khi bạn gõ exitnó sẽ ước lượng cho cùng một đối tượng có thể gọi được, mà không gọi nó, đối tượng được in sẽ lần lượt gọi __repr__các đối tượng.
Chúng ta có thể tận dụng lợi thế này bằng cách liên kết __repr__đến __call__và do đó có được hành vi dự kiến thoát khỏi hệ thống ngay cả khi chúng ta gõ exitmà không có dấu ngoặc đơn.
()ở cuối ... nếu không, nó có thể (có thể) là một biến ... hoặc một loại đối tượng nào đó ...