From 9a58c4ef125008e528ec96dc85091a378353d41a Mon Sep 17 00:00:00 2001 From: Your Name Date: Sun, 16 Feb 2025 19:59:53 +0800 Subject: [PATCH] 'Solution' --- app/main.py | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/app/main.py b/app/main.py index 442b381e..515c4d9b 100644 --- a/app/main.py +++ b/app/main.py @@ -1,3 +1,28 @@ +import os +from typing import Optional, Type + + class CleanUpFile: - # write your code here - pass + def __init__(self, filename: str) -> None: + self.filename = filename + + def __enter__(self) -> "CleanUpFile": + return self + + def __exit__( + self, + exc_type: Optional[Type[BaseException]], + exc_value: Optional[BaseException], + traceback: Optional[object] + ) -> None: + if os.path.exists(self.filename): + os.remove(self.filename) + print(f"File '{self.filename}' has been removed.") + else: + print(f"File '{self.filename}' does not exist.") + + +# Example usage: +with CleanUpFile("file.txt"): + with open("file.txt", "w") as file: + file.write("Hello Mate!")