Python 中os模块/pathlib模块获取文件夹下的文件名

使用Python的os模块或pathlib模块来获取文件夹下的所有文件名。以下是两种方法的示例代码:

方法1:使用os模块

import os

def get_file_names(directory):
    # 获取目录下的所有文件和文件夹
    all_items = os.listdir(directory)
    
    # 过滤出文件
    file_names = [item for item in all_items if os.path.isfile(os.path.join(directory, item))]
    
    return file_names

# 示例用法
directory_path = '/path/to/your/directory'
file_names = get_file_names(directory_path)
print(file_names)

方法2:使用pathlib模块

from pathlib import Path

def get_file_names(directory):
    # 使用Path对象
    path = Path(directory)
    
    # 获取目录下的所有文件
    file_names = [file.name for file in path.iterdir() if file.is_file()]
    
    return file_names

# 示例用法
directory_path = '/path/to/your/directory'
file_names = get_file_names(directory_path)
print(file_names)

解释:

  • os.listdir(directory):返回指定目录下的所有文件和文件夹的名称列表。
  • os.path.isfile(path):检查给定的路径是否是一个文件。
  • Path(directory).iterdir():返回一个生成器,生成目录下的所有文件和文件夹的Path对象。
  • file.is_file():检查Path对象是否是一个文件。

注意事项:

  • 确保提供的directory_path是一个有效的目录路径。
  • 如果你需要递归地获取子目录中的文件,可以使用os.walk()Path.rglob()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

点云SLAM

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值