Created
Aug 8, 2024 06:42 AM
Favorite
Favorite
Priority
备注
推荐
类型
Python
在Python编程中,我们经常会遇到需要对文件和目录进行操作的情况。今天我们将介绍三个非常有用的模块:os、os.path和shutil。
这些模块可以帮助我们创建目录、删除文件、处理文件路径以及执行更复杂的文件操作。
os模块
os模块提供了许多与操作系统交互的功能,包括创建目录、删除文件、改变工作目录等。
示例 1: 获取当前工作目录
import os# 获取当前工作目录current_dir = os.getcwd()print("Current working directory:", current_dir)
示例 2: 创建新目录
import os# 创建新目录new_dir = "my_new_directory"os.makedirs(new_dir, exist_ok=True)print(f"Directory '{new_dir}' created.")
示例 3: 删除空目录
import os# 删除空目录dir_to_delete = "my_new_directory"os.rmdir(dir_to_delete)print(f"Directory '{dir_to_delete}' deleted.")
示例 4: 列出目录内容
import os# 列出当前目录下的所有文件和目录for item in os.listdir(): print(item)
示例 5: 改变当前工作目录
import os# 改变当前工作目录new_dir = "/path/to/new/directory"os.chdir(new_dir)print("Changed working directory to:", os.getcwd())
os.path模块
os.path模块提供了用于处理文件路径的实用函数,如检查路径是否存在、获取文件大小等。
示例 6: 检查路径是否存在
import os# 检查路径是否存在path = "/path/to/some/file.txt"if os.path.exists(path): print(f"The path '{path}' exists.")else: print(f"The path '{path}' does not exist.")
示例 7: 获取文件大小
import os# 获取文件大小file_path = "/path/to/some/file.txt"size = os.path.getsize(file_path)print(f"Size of '{file_path}': {size} bytes")
示例 8: 拆分路径
import os# 拆分路径path = "/path/to/some/file.txt"dirname, filename = os.path.split(path)print("Directory:", dirname)print("File name:", filename)
示例 9: 检查路径是否为文件或目录
import os# 检查路径是否为文件或目录path = "/path/to/some/file.txt"if os.path.isfile(path): print(f"'{path}' is a file.")elif os.path.isdir(path): print(f"'{path}' is a directory.")else: print(f"'{path}' does not exist or is not a regular file/directory.")
shutil模块
shutil模块提供了高级文件操作服务,例如复制文件、移动文件、压缩文件等。
示例 10: 复制文件
import shutil# 复制文件src = "/path/to/source/file.txt"dst = "/path/to/destination/file.txt"shutil.copy2(src, dst)print(f"File '{src}' copied to '{dst}'.")
示例 11: 移动文件
import shutil# 移动文件src = "/path/to/source/file.txt"dst = "/path/to/destination/file.txt"shutil.move(src, dst)print(f"File '{src}' moved to '{dst}'.")
示例 12: 压缩文件夹
import shutil# 压缩文件夹folder_to_zip = "/path/to/folder"archive_name = "/path/to/archive.zip"shutil.make_archive(archive_name, 'zip', folder_to_zip)print(f"Folder '{folder_to_zip}' compressed into '{archive_name}.zip'.")
运行其中示例:
示例 1: 获取当前工作目录
import os# 获取当前工作目录current_dir = os.getcwd()print("Current working directory:", current_dir)
示例 2: 创建新目录
import os# 创建新目录new_dir = "my_new_directory"os.makedirs(new_dir, exist_ok=True)print(f"Directory '{new_dir}' created.")
示例 4: 列出目录内容
import os# 列出当前目录下的所有文件和目录for item in os.listdir(): print(item)
示例 6: 检查路径是否存在
import os# 检查路径是否存在path = "/path/to/some/file.txt"if os.path.exists(path): print(f"The path '{path}' exists.")else: print(f"The path '{path}' does not exist.")
示例 10: 复制文件
import shutil# 复制文件src = "/path/to/source/file.txt"dst = "/path/to/destination/file.txt"shutil.copy2(src, dst)print(f"File '{src}' copied to '{dst}'.")
notion image
Loading...
Alan_Hsu
Alan_Hsu
许心志我在 蓝湛阔天海 中定自主宰
统计
文章数:
176
最新发布
2025_周报 #01
2025-1-5
2024_年终总结: [代码与咖啡]打工人的漂流记
2025-1-4
2024_半年总结_工作篇
2025-1-4
🎄✨ 圣诞特辑 | 美食简餐 🎁🍷
2025-1-3
基于大模型搭建本地私有化知识库的搭建与研究
2025-1-2
python中 self cls的区别
2025-1-2