Python 的 os
和 os.path
模块提供了许多用于与操作系统交互的函数,包括文件和目录的管理。下面是一些常用函数的示例和解释,以及如何使用它们:
1. os.getcwd()
获取当前工作目录。
import os
current_directory = os.getcwd()
print(f"Current working directory: {current_directory}")
2. os.chdir(path)
改变当前工作目录到指定的路径。
import os
os.chdir('/path/to/new/directory')
new_directory = os.getcwd()
print(f"Changed working directory to: {new_directory}")
3. os.listdir(path)
列出指定目录下的所有文件和目录。
import os
files_in_directory = os.listdir('/path/to/directory')
for file in files_in_directory:
print(file)
4. os.path.exists(path)
检查路径是否存在。
import os
path = '/path/to/file'
if os.path.exists(path):
print("Path exists.")
else:
print("Path does not exist.")
5. os.path.isfile(path)
检查路径是否为文件。
import os
path = '/path/to/file'
if os.path.isfile(path):
print("It is a file.")
else:
print("It is not a file.")
6. os.path.isdir(path)
检查路径是否为目录。
import os
path = '/path/to/directory'
if os.path.isdir(path):
print("It is a directory.")
else:
print("It is not a directory.")
7. os.path.join(path1, path2, ...)
将多个路径片段组合成一个完整的路径。
import os
directory = '/path/to'
filename = 'file.txt'
full_path = os.path.join(directory, filename)
print(f"Full path: {full_path}")
8. os.path.split(path)
将路径分割为目录和文件名。
import os
path = '/path/to/file.txt'
directory, filename = os.path.split(path)
print(f"Directory: {directory}, Filename: {filename}")
9. os.path.basename(path)
返回路径中的文件名部分。
import os
path = '/path/to/file.txt'
basename = os.path.basename(path)
print(f"Base name: {basename}")
10. os.path.dirname(path)
返回路径中的目录部分。
import os
path = '/path/to/file.txt'
dirname = os.path.dirname(path)
print(f"Directory name: {dirname}")
11. os.path.splitext(path)
将路径分割为主文件名和扩展名。
import os
path = '/path/to/file.txt'
filename, extension = os.path.splitext(path)
print(f"Filename: {filename}, Extension: {extension}")
12. os.path.abspath(path)
返回路径的绝对形式。
import os
path = 'file.txt'
abs_path = os.path.abspath(path)
print(f"Absolute path: {abs_path}")
13. os.path.normpath(path)
规范化路径,消除多余的斜杠和符号链接。
import os
path = '/path//to///file.txt'
normalized_path = os.path.normpath(path)
print(f"Normalized path: {normalized_path}")
14. os.path.expanduser(path)
将路径中的 ~
和 ~user
替换为用户的家目录。
import os
path = '~/Documents'
expanded_path = os.path.expanduser(path)
print(f"Expanded path: {expanded_path}")
15. os.path.getsize(path)
返回文件的大小(以字节为单位)。
import os
path = '/path/to/file.txt'
size = os.path.getsize(path)
print(f"File size: {size} bytes")
以上这些函数可以帮助你更方便地处理文件路径和目录,无论你是在何种操作系统环境中运行你的 Python 程序。使用 os
和 os.path
模块可以让你的代码更加跨平台和健壮。