Tôi đã luôn luôn giả định rằng một tập tin sẽ bị rò rỉ nếu nó được mở cửa mà không bị đóng cửa, nhưng tôi chỉ xác nhận rằng nếu tôi nhập dòng mã sau đây, các tập tin sẽ đóng cửa:Làm thế nào để python đóng các tập tin đã được gc'ed?
>>> f = open('somefile.txt')
>>> del f
Chỉ cần ra khỏi tò mò tuyệt , Cái này hoạt động ra sao? Tôi nhận thấy rằng tệp không bao gồm phương thức __
del __
.
Để làm rõ, __del__ được gọi trong khi thu thập rác, và trong việc thực hiện C của Python cho các đối tượng tập tin xảy ra tại thời điểm khi không có thêm tham chiếu đến đối tượng tệp. –