程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

Python 的os和shutil包简介(python的os和sys)

hfteth 2025-01-26 22:31:14 技术文章 13 ℃

Python 提供了 osshutil 等内置包,以有效地处理目录和文件。os 软件包提供与操作系统交互的功能,例如创建目录和导航文件系统。shutil 包可用于对文件和文件集合执行高级操作。

创建目录

使用 os.mkdir()os.makedirs() 函数在 Python 中创建目录非常简单。

  • 使用 os.mkdir()
import os

# Create a single directory
os.mkdir('new_folder')

使用 os.makedirs()

import os

# Create a directory with nested folders
os.makedirs('parent_folder/child_folder')

如果目录已经存在,这两个函数都会引发错误,因此您可能需要先检查它是否存在:

import os

if not os.path.exists('new_folder'):
    os.mkdir('new_folder')

列出目录中的文件

要列出目录中的所有文件,可以使用 os.listdir():

import os

# List all files in the current directory
files = os.listdir('.')
for file in files:
    print(file)

对于更复杂的过滤,glob 模块是一个强大的替代方案:

import glob

# List all .txt files in the current directory
txt_files = glob.glob('*.txt')
print(txt_files)

移动和复制文件

shutil 软件包提供了简单的功能来移动和复制文件。

复制文件

import shutil

# Copy a file
shutil.copy('source.txt', 'destination.txt')

移动文件

import shutil

# Move a file
shutil.move('source.txt', 'new_folder/destination.txt')

这些功能很直观,使文件操作变得简单明了。

删除文件和目录

删除文件和目录是有风险的,因此在继续之前,请务必确保您有备份。os.remove() 函数用于文件,而 os.rmdir()shutil.rmtree() 用于目录。

  • 删除文件
import os

# Delete a single file
os.remove('file_to_delete.txt')

删除目录

import os
import shutil

# Remove an empty directory
os.rmdir('empty_folder')

# Remove a directory with its contents
shutil.rmtree('folder_to_delete')

结论

了解如何处理目录和文件对于任何 Python 开发人员来说都至关重要。osshutil 软件包提供了强大的工具,可以轻松创建、移动、复制和删除文件和目录。无论您是自动化任务还是构建复杂的系统,这些工具都将非常宝贵

Tags:

最近发表
标签列表