【Python】文件夹解压的方法汇总

在Python中,批量读取文件和对文件夹进行操作是常见的任务,我们可以通过标准库中的os来实现。以下是一些基本的方法和示例:

1. 列出目录中的文件和文件夹

要列出目录中的所有文件和文件夹,可以使用os.listdir()方法。这个方法会返回一个包含目录中所有条目的列表。

import os

# 指定目录
directory = '/path/to/directory'

# 列出目录中的所有文件和文件夹
entries = os.listdir(directory)

for entry in entries:
    print(entry)

2. 遍历目录树

如果你想递归地遍历一个目录树,可以使用os.walk()方法。这个方法生成一个文件夹名的三元组(dirpath, dirnames, filenames),其中dirpath是检查的文件夹路径,dirnames是该文件夹中的子文件夹列表,filenames是该文件夹中的文件列表。

for dirpath, dirnames, filenames in os.walk('/path/to/directory'):
    for filename in filenames:
        print(os.path.join(dirpath, filename))
    for dirname in dirnames:
        print(os.path.join(dirpath, dirname))

3. 批量读取文件

如果你需要读取一个文件夹中的所有文件,可以使用glob.glob()方法来获取所有匹配的文件路径,然后逐个打开和读取。

import glob

# 指定文件夹和文件匹配模式
file_paths = glob.glob('/path/to/directory/*')

for file_path in file_paths:
    with open(file_path, 'r') as file:
        content = file.read()
        print(content)

4. 创建和删除文件夹

使用os.makedirs()方法可以创建新的文件夹,如果需要递归创建多层文件夹,可以设置exist_ok=True参数。

os.makedirs('/path/to/new/directory', exist_ok=True)

删除文件夹可以使用os.rmdir()方法删除空文件夹,或者使用shutil.rmtree()方法删除非空文件夹。

import shutil

# 删除空文件夹
os.rmdir('/path/to/directory')

# 删除非空文件夹及其内容
shutil.rmtree('/path/to/non-empty/directory')

5. 重命名和移动文件

使用os.rename()方法可以重命名文件或将文件移动到新位置。

# 重命名文件
os.rename('/path/to/oldname', '/path/to/newname')

6. 检查文件和文件夹存在

使用os.path.exists()方法可以检查文件或文件夹是否存在。

if os.path.exists('/path/to/file'):
    print("文件存在")
else:
    print("文件不存在")

这些是Python中处理文件和文件夹的一些基本操作。

在操作批量处理文件夹的时候需要谨慎处理,尤其是在执行删除操作时,以免意外删除重要数据哦~

在这里插入图片描述

相关推荐

  1. ubuntu批量文件指令汇总

    2024-07-16 20:42:01       55 阅读
  2. Python压缩、文件

    2024-07-16 20:42:01       49 阅读
  3. pythonRAR文件

    2024-07-16 20:42:01       31 阅读
  4. KindleUnpack - PythonAmazon / Kindlegen生成电子书

    2024-07-16 20:42:01       25 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-16 20:42:01       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-16 20:42:01       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-16 20:42:01       62 阅读
  4. Python语言-面向对象

    2024-07-16 20:42:01       72 阅读

热门阅读

  1. MetaGPT和LangGraph对比

    2024-07-16 20:42:01       20 阅读
  2. Linux基础命令

    2024-07-16 20:42:01       22 阅读
  3. JUC-并发的概念

    2024-07-16 20:42:01       19 阅读
  4. 第五章 初识Sping框架(2023版本IDEA)

    2024-07-16 20:42:01       18 阅读
  5. TCP重传、滑动窗口、流量控制、拥塞控制机制

    2024-07-16 20:42:01       20 阅读
  6. elasticsearch中模板的创建和使用

    2024-07-16 20:42:01       20 阅读
  7. P8704 [蓝桥杯 2020 省 A1] 填空问题 题解

    2024-07-16 20:42:01       20 阅读
  8. Flask包算法服务

    2024-07-16 20:42:01       21 阅读