Python OS 文件/目录方法
大家好,有抱负的 Python 程序员们!今天,我们将深入探讨使用 Python 的 OS 模块进行文件和目录操作的激动人心的世界。作为您友好邻居的计算机教师,我会一步一步地引导您完成这次旅程,确保您沿途理解每一个概念。所以,拿上你最喜欢的饮料,放松一下,让我们开始这次冒险吧!
OS 模块简介
在我们深入研究文件和目录操作之前,先花点时间了解 OS 模块是什么。
Python 中的 OS 模块提供了一种与操作系统交互的方式。它就像是你 Python 代码和底层系统之间的魔法桥梁,允许你对文件和目录执行各种操作。
要使用 OS 模块,我们首先需要导入它:
import os
现在我们已经导入了我们可靠的 OS 模块,让我们来探索一些它用于处理文件和目录的最有用的方法。
文件操作
检查文件是否存在
你可能想做的第一件事是检查一个文件是否存在。以下是如何做到这一点:
import os
file_path = "C:/Users/YourName/Documents/my_file.txt"
if os.path.exists(file_path):
print("文件存在!")
else:
print("文件不存在。")
在这个例子中,我们使用 os.path.exists()
来检查指定路径的文件是否存在。如果存在,我们打印一条快乐的消息;如果不存在,我们通知用户。
创建新文件
现在,让我们创建一个新文件:
import os
file_path = "C:/Users/YourName/Documents/new_file.txt"
with open(file_path, 'w') as file:
file.write("Hello, World!")
print(f"新文件已创建在 {file_path}")
这里,我们使用 open()
函数和 'w' 模式(写入模式)来创建一个新文件。然后我们向文件写入 "Hello, World!" 并使用 with
语句自动关闭它。
重命名文件
有时,你可能想重命名一个文件。以下是如何做到这一点:
import os
old_name = "C:/Users/YourName/Documents/old_file.txt"
new_name = "C:/Users/YourName/Documents/new_file.txt"
os.rename(old_name, new_name)
print(f"文件已从 {old_name} 重命名为 {new_name}")
os.rename()
函数接受两个参数:文件的当前名称和你想给它的新名称。
删除文件
小心这个操作!删除文件是一个强大的操作,所以在运行此代码之前一定要三思:
import os
file_to_delete = "C:/Users/YourName/Documents/unwanted_file.txt"
if os.path.exists(file_to_delete):
os.remove(file_to_delete)
print(f"文件 {file_to_delete} 已被删除。")
else:
print("文件不存在。")
我们首先使用 os.path.exists()
检查文件是否存在,如果存在,我们使用 os.remove()
删除它。
目录操作
现在我们已经介绍了文件操作,让我们继续处理目录。
创建新目录
创建一个新目录很简单:
import os
new_dir = "C:/Users/YourName/Documents/NewFolder"
if not os.path.exists(new_dir):
os.mkdir(new_dir)
print(f"目录 {new_dir} 创建成功!")
else:
print("目录已存在。")
我们使用 os.mkdir()
来创建一个新目录。但是首先,我们检查它是否已经存在,以避免任何错误。
列出目录内容
想知道目录里有什么吗?以下是如何操作:
import os
dir_path = "C:/Users/YourName/Documents"
contents = os.listdir(dir_path)
print("目录内容:")
for item in contents:
print(item)
os.listdir()
返回指定目录中所有文件和子目录的列表。
改变当前工作目录
你可以像这样改变你的当前工作目录:
import os
new_working_dir = "C:/Users/YourName/Desktop"
os.chdir(new_working_dir)
print(f"当前工作目录已更改为:{os.getcwd()}")
os.chdir()
改变当前工作目录,而 os.getcwd()
返回当前工作目录。
删除目录
最后,让我们看看如何删除目录:
import os
dir_to_remove = "C:/Users/YourName/Documents/OldFolder"
if os.path.exists(dir_to_remove):
os.rmdir(dir_to_remove)
print(f"目录 {dir_to_remove} 已被删除。")
else:
print("目录不存在。")
os.rmdir()
删除指定的目录,但前提是它是空的。如果你需要删除一个目录及其所有内容,你需要使用 shutil
模块,这将在未来的课程中介绍。
OS 文件/目录方法总结
以下是我们介绍过的方法的便捷表格:
方法 | 描述 |
---|---|
os.path.exists() | 检查文件或目录是否存在 |
os.rename() | 重命名文件或目录 |
os.remove() | 删除文件 |
os.mkdir() | 创建新目录 |
os.listdir() | 列出目录内容 |
os.chdir() | 改变当前工作目录 |
os.getcwd() | 获取当前工作目录 |
os.rmdir() | 删除空目录 |
结论
恭喜你!你已经迈出了使用 Python 的 OS 模块进行文件和目录操作的第一步。请记住,强大的功能伴随着巨大的责任——在修改文件和目录时一定要小心,尤其是在删除它们时。
在你继续 Python 的旅程中,你会发现这些文件和目录操作对于数据处理、文件整理甚至构建你自己的文件管理系统非常有用。
请继续练习,保持好奇心,祝编程愉快!
Credits: Image by storyset