Python使用os模块操作文件和目录
在Python中,可以使用os模块来操作文件和目录。os模块提供了许多功能来处理文件和目录,如创建、删除、重命名、遍历等。
下面是一些常见的使用os模块操作文件和目录的方法:
获取当前工作目录:可以使用
os.getcwd()
函数来获取当前工作目录。改变当前工作目录:可以使用
os.chdir(path)
函数来改变当前工作目录为指定的路径。列出目录下的文件和文件夹:可以使用
os.listdir(path)
函数来列出指定目录下的所有文件和文件夹。创建目录:可以使用
os.mkdir(path)
函数来创建一个新的目录。如果目录已经存在,会抛出OSError异常。删除目录:可以使用
os.rmdir(path)
函数来删除一个目录。如果目录不为空,会抛出OSError异常。创建文件:可以使用
open(path, 'w')
函数来创建一个新的文件。删除文件:可以使用
os.remove(path)
函数来删除一个文件。重命名文件或目录:可以使用
os.rename(src, dst)
函数来重命名一个文件或目录。检查文件或目录是否存在:可以使用
os.path.exists(path)
函数来检查一个文件或目录是否存在。获取文件大小:可以使用
os.path.getsize(path)
函数来获取一个文件的大小。判断是否是文件:可以使用
os.path.isfile(path)
函数来判断一个路径是否是文件。判断是否是目录:可以使用
os.path.isdir(path)
函数来判断一个路径是否是目录。
下面是一个示例代码,演示了如何创建目录、文件以及遍历目录下的文件和文件夹:
import os
# 获取当前工作目录
cwd = os.getcwd()
print("当前工作目录:", cwd)
# 创建目录
dir_path = os.path.join(cwd, "test_dir")
os.mkdir(dir_path)
print("目录已创建:", dir_path)
# 创建文件
file_path = os.path.join(dir_path, "test_file.txt")
with open(file_path, 'w') as f:
f.write("Hello, world!")
print("文件已创建:", file_path)
# 列出目录下的文件和文件夹
contents = os.listdir(dir_path)
print("目录下的内容:")
for content in contents:
content_path = os.path.join(dir_path, content)
if os.path.isfile(content_path):
print("- 文件:", content_path)
elif os.path.isdir(content_path):
print("- 目录:", content_path)
# 删除文件
os.remove(file_path)
print("文件已删除:", file_path)
# 删除目录
os.rmdir(dir_path)
print("目录已删除:", dir_path)
需要注意的是,在使用os模块操作文件和目录时,需要保证对应的路径已经存在或正确。同时,在Windows系统中,使用的是反斜杠(\)作为路径分隔符,在其他系统中,使用的是斜杠(/)作为路径分隔符。使用os.path.join()
函数可以根据当前系统自动构建正确的路径。