在日常编程中,我们经常需要对计算机中的文件和目录进行操作,比如创建、删除、移动、读取或写入文件。Python 提供了强大而简洁的工具来处理这些任务。本文将带你从零开始,一步步学习 Python文件系统操作,即使你是编程小白,也能轻松上手!

Python 中处理文件系统主要依赖以下几个内置模块:
os:提供与操作系统交互的功能,如创建目录、获取当前路径等。os.path:专门用于处理文件路径(如拼接、判断是否存在等)。shutil:用于高级文件操作,如复制、移动、删除整个目录等。pathlib(Python 3.4+):面向对象的路径操作方式,更现代、更直观。首先,我们来看看如何获取当前工作目录、判断路径是否存在、拼接路径等基本操作。
import os# 获取当前工作目录current_dir = os.getcwd()print("当前工作目录:", current_dir)# 拼接路径(跨平台安全)file_path = os.path.join(current_dir, "example.txt")print("文件完整路径:", file_path)# 判断路径是否存在if os.path.exists(file_path): print("文件存在!")else: print("文件不存在。")# 判断是文件还是目录if os.path.isfile(file_path): print("这是一个文件。")elif os.path.isdir(file_path): print("这是一个目录。")以上代码展示了如何安全地处理路径,避免因不同操作系统(Windows 使用 \,Linux/macOS 使用 /)导致的问题。这也是 Python路径处理 的核心技巧之一。
接下来,我们学习如何创建和删除文件或目录。
import os# 创建一个新目录os.mkdir("my_folder")print("目录已创建。")# 创建多级目录(如果父目录不存在也会自动创建)os.makedirs("parent/child/grandchild", exist_ok=True)# 创建一个空文件(使用 open + w 模式)with open("my_file.txt", "w") as f: pass # 创建空文件# 删除文件os.remove("my_file.txt")# 删除空目录os.rmdir("my_folder")# 注意:os.rmdir() 只能删除空目录!如果要删除非空目录,可以使用 shutil.rmtree(),但请谨慎使用,因为它会递归删除整个目录树!
文件读写是 Python文件读写 的核心内容。推荐使用 with open() 语句,它能自动关闭文件,避免资源泄露。
# 写入文件with open("hello.txt", "w", encoding="utf-8") as f: f.write("你好,世界!\n") f.write("这是第二行。")# 读取整个文件with open("hello.txt", "r", encoding="utf-8") as f: content = f.read() print(content)# 按行读取with open("hello.txt", "r", encoding="utf-8") as f: for line in f: print("行内容:", line.strip())从 Python 3.4 开始,官方推荐使用 pathlib 模块,它让路径操作更直观:
from pathlib import Path# 创建 Path 对象p = Path("data/output.txt")# 自动创建父目录p.parent.mkdir(parents=True, exist_ok=True)# 写入文件p.write_text("使用 pathlib 写入内容", encoding="utf-8")# 读取文件content = p.read_text(encoding="utf-8")print(content)# 列出目录下所有 .txt 文件for txt_file in Path(".").glob("*.txt"): print(txt_file)通过本教程,你已经掌握了 Python文件系统操作 的基础知识,包括路径处理、目录创建、文件读写等核心技能。无论你是处理日志、批量重命名文件,还是自动化备份,这些知识都至关重要。
记住关键点:
os.path.join() 或 pathlib 来安全拼接路径。with open() 安全读写文件。shutil.rmtree()(小心使用!)。pathlib,代码更清晰、更现代。现在,你可以自信地用 Python 管理你的文件系统了!快去动手实践吧!
本文由主机测评网于2025-12-20发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20251210603.html