Python实现资源管理器大作业:涵盖多操作功能与错误处理要点
以下是为您提供的资源管理器的代码示例,使用 Python 实现: ```python import os import shutil class ResourceManager: def __init__(self): """ 初始化资源管理器 """ self.current_path = os.getcwd() # 获取当前工作目录 def list_files_and_folders(self): """ 列出当前目录下的文件和文件夹 """ contents = os.listdir(self.current_path) for item in contents: print(item) def create_folder(self, folder_name): """ 创建新文件夹 参数: folder_name (str): 要创建的文件夹名称 """ try: os.mkdir(os.path.join(self.current_path, folder_name)) print(f"创建文件夹 {folder_name} 成功") except FileExistsError: print(f"文件夹 {folder_name} 已存在") def create_file(self, file_name): """ 创建新文件 参数: file_name (str): 要创建的文件名称 """ try: with open(os.path.join(self.current_path, file_name), 'w') as f: pass print(f"创建文件 {file_name} 成功") except FileExistsError: print(f"文件 {file_name} 已存在") def move_item(self, source_path, destination_path): """ 移动文件或文件夹 参数: source_path (str): 源文件或文件夹路径 destination_path (str): 目标路径 """ try: shutil.move(source_path, destination_path) print(f"移动 {source_path} 到 {destination_path} 成功") except FileNotFoundError: print(f"源文件或文件夹 {source_path} 未找到") except shutil.Error: print("移动操作失败") def copy_item(self, source_path, destination_path): """ 复制文件或文件夹 参数: source_path (str): 源文件或文件夹路径 destination_path (str): 目标路径 """ try: if os.path.isdir(source_path): shutil.copytree(source_path, destination_path) else: shutil.copy(source_path, destination_path) print(f"复制 {source_path} 到 {destination_path} 成功") except FileNotFoundError: print(f"源文件或文件夹 {source_path} 未找到") except shutil.Error: print("复制操作失败") def delete_item(self, item_path): """ 删除文件或文件夹 参数: item_path (str): 要删除的文件或文件夹路径 """ try: if os.path.isdir(item_path): shutil.rmtree(item_path) else: os.remove(item_path) print(f"删除 {item_path} 成功") except FileNotFoundError: print(f"文件或文件夹 {item_path} 未找到") except OSError: print("删除操作失败") if __name__ == "__main__": manager = ResourceManager() # 示例调用 manager.list_files_and_folders() manager.create_folder("new_folder") manager.create_file("new_file.txt") manager.move_item("new_file.txt", "new_folder") manager.copy_item("new_folder", "copy_of_new_folder") manager.delete_item("new_folder") ``` 额外需要注意的逻辑点: 1. 处理文件或文件夹不存在的情况时,要给出清晰明确的错误提示。 2. 对于复制和移动操作,如果目标路径已存在同名文件或文件夹,需要考虑如何处理冲突。 3. 注意权限问题,确保程序有足够的权限进行文件和文件夹的操作。 ######[AI写代码神器 | 883点数解答 | 2024-12-05 15:03:36]
- Python实现Q老师成绩管理任务:修改与查看学生成绩(字节豆包 | 191点数解答 | 2025-12-20 20:55:41)70
- Python 代码助力 Q 老师高效管理班级学生成绩:修改与查看一键搞定(字节豆包 | 326点数解答 | 2025-12-27 20:48:12)72
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)460
- C++实现单门课程成绩管理系统:教师学生双身份操作全解析(GPT | 6361点数解答 | 2024-05-24 02:01:02)535
- C++ 实现超实用单门课程成绩管理系统,教师学生灵活使用! (GPT | 68点数解答 | 2024-05-24 10:17:09)330
- C++实现:功能完备的单门课程成绩管理系统(GPT | 4293点数解答 | 2024-05-24 10:20:03)378
- JavaScript ES6:用箭头函数与 map 方法让数组数字翻倍的作业示例 (字节豆包 | 104点数解答 | 2024-10-29 20:59:25)224
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)345
- 工程师必知:软件系统用户文档编写九大要点揭秘(百度文心 | 350点数解答 | 2023-11-09 18:23:53)184
- Java 实现仿 Windows 资源管理器:文件管理器功能全解析与代码示例(字节豆包 | 623点数解答 | 2025-01-01 14:59:04)247
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)416
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)408