Mô -đun Lưu ý: Các chức năng được đăng ký thông qua mô -đun này không được gọi khi chương trình bị giết bởi tín hiệu không được xử lý bởi Python, khi phát hiện lỗi nội bộ gây tử vong của Python hoặc khi def goodbye(name, adjective): print('Goodbye %s, it was %s to meet you.' % (name, adjective)) import atexit atexit.register(goodbye, 'Donny', 'nice') # or: atexit.register(goodbye, adjective='nice', name='Donny')1 is called. Đã thay đổi trong phiên bản 3.7: Khi được sử dụng với các trình tự phụ C-API, các chức năng đã đăng ký là cục bộ với trình thông dịch mà họ đã đăng ký.When used with C-API subinterpreters, registered functions are local to the interpreter they were registered in. atexit.register (func, *args, ** kwargs) ¶register(func, *args, **kwargs)¶Đăng ký func như một chức năng sẽ được thực thi khi chấm dứt. Bất kỳ đối số tùy chọn nào sẽ được chuyển cho Func phải được chuyển dưới dạng đối số cho def goodbye(name, adjective): print('Goodbye %s, it was %s to meet you.' % (name, adjective)) import atexit atexit.register(goodbye, 'Donny', 'nice') # or: atexit.register(goodbye, adjective='nice', name='Donny')2. Có thể đăng ký cùng một chức năng và đối số nhiều lần. Khi chấm dứt chương trình bình thường (ví dụ, nếu def goodbye(name, adjective): print('Goodbye %s, it was %s to meet you.' % (name, adjective)) import atexit atexit.register(goodbye, 'Donny', 'nice') # or: atexit.register(goodbye, adjective='nice', name='Donny')3 được gọi hoặc thực hiện mô -đun chính hoàn thành), tất cả các chức năng được đăng ký đều được gọi vào cuối cùng, thứ nhất. Giả định là các mô -đun cấp thấp hơn thường sẽ được nhập trước các mô -đun cấp cao hơn và do đó phải được làm sạch sau. Nếu một ngoại lệ được nêu ra trong quá trình thực hiện các trình xử lý thoát, một dấu vết được in (trừ khi def goodbye(name, adjective): print('Goodbye %s, it was %s to meet you.' % (name, adjective)) import atexit atexit.register(goodbye, 'Donny', 'nice') # or: atexit.register(goodbye, adjective='nice', name='Donny')4 được nâng lên) và thông tin ngoại lệ được lưu. Sau khi tất cả những người xử lý thoát đã có cơ hội chạy, ngoại lệ cuối cùng được nâng lên được nâng lên. Hàm này trả về func, giúp nó có thể sử dụng nó như một người trang trí. atexit.unregister (func) ¶unregister(func)¶Xóa hàm khỏi danh sách các chức năng sẽ được chạy khi tắt máy. def goodbye(name, adjective): print('Goodbye %s, it was %s to meet you.' % (name, adjective)) import atexit atexit.register(goodbye, 'Donny', 'nice') # or: atexit.register(goodbye, adjective='nice', name='Donny')5 âm thầm không làm gì nếu Func không được đăng ký trước đó. Nếu func đã được đăng ký nhiều lần, mọi sự xuất hiện của chức năng đó trong ngăn xếp cuộc gọi atexit sẽ bị xóa. So sánh bình đẳng (def goodbye(name, adjective): print('Goodbye %s, it was %s to meet you.' % (name, adjective)) import atexit atexit.register(goodbye, 'Donny', 'nice') # or: atexit.register(goodbye, adjective='nice', name='Donny')7) được sử dụng nội bộ trong quá trình không đăng ký, do đó các tài liệu tham khảo chức năng không cần phải có danh tính phù hợp.
|