优草派 > 问答 > Python

python获取目录下所有文件的文件名

作者:wolf2009     

在Python中,我们可以轻松地获取目录下的所有文件的文件名。这对于一些需要操作文件的任务非常有用,比如批量处理文件、文件备份等。

本文将介绍如何使用Python获取目录下所有文件的文件名,包括使用os模块和glob模块两种方法。同时,还将介绍如何使用递归方式获取多级目录下的文件名。

使用os模块获取目录下所有文件的文件名

os模块是Python中处理文件和目录的标准库,它提供了一系列操作文件和目录的函数。其中,os.listdir()函数可以用于获取目录下所有文件和目录的名称。

下面是使用os模块获取当前目录下所有文件的文件名的代码:

```python

import os

files = os.listdir('.')

for file in files:

if os.path.isfile(file):

print(file)

```

上述代码首先使用os.listdir('.')函数获取当前目录下所有文件和目录的名称,并将它们保存在一个列表中。然后,使用os.path.isfile(file)函数判断每个名称是否为文件,如果是文件,则打印文件名。

使用glob模块获取目录下所有文件的文件名

glob模块也是Python中处理文件和目录的标准库之一,它提供了一种更加简便的方式来获取目录下所有文件的文件名。

下面是使用glob模块获取当前目录下所有文件的文件名的代码:

```python

import glob

files = glob.glob('*')

for file in files:

if os.path.isfile(file):

print(file)

```

上述代码使用glob.glob('*')函数获取当前目录下所有文件的文件名,并将它们保存在一个列表中。然后,使用os.path.isfile(file)函数判断每个文件名是否为文件,如果是文件,则打印文件名。

使用递归方式获取多级目录下的文件名

如果目录下有多级子目录,我们可以使用递归方式获取所有文件的文件名。递归方式是一种自我调用的算法,它可以将一个问题分解成多个子问题,并通过递归调用自身来解决这些子问题。

下面是使用递归方式获取多级目录下所有文件的文件名的代码:

```python

import os

def get_file_names(path):

files = os.listdir(path)

for file in files:

if os.path.isfile(os.path.join(path, file)):

print(os.path.join(path, file))

elif os.path.isdir(os.path.join(path, file)):

get_file_names(os.path.join(path, file))

get_file_names('.')

```

上述代码首先定义了一个函数get_file_names(path),它接受一个路径作为参数。该函数首先使用os.listdir(path)函数获取路径下所有文件和目录的名称,并将它们保存在一个列表中。然后,使用os.path.isfile(os.path.join(path, file))函数判断每个名称是否为文件,如果是文件,则打印文件名;否则,使用os.path.isdir(os.path.join(path, file))函数判断每个名称是否为目录,如果是目录,则递归调用get_file_names函数继续获取该目录下所有文件的文件名。

5天短视频训练营
新手入门剪辑课程,零基础也能学
分享变现渠道,助你兼职赚钱
限时特惠:0元
立即抢
新手剪辑课程 (精心挑选,简单易学)
第一课
新手如何学剪辑视频? 开始学习
第二课
短视频剪辑培训班速成是真的吗? 开始学习
第三课
不需要付费的视频剪辑软件有哪些? 开始学习
第四课
手机剪辑app哪个好? 开始学习
第五课
如何做短视频剪辑赚钱? 开始学习
第六课
视频剪辑接单网站APP有哪些? 开始学习
第七课
哪里可以学短视频运营? 开始学习
第八课
做短视频运营需要会什么? 开始学习
相关问题
sql判断字段是否存在
python键值对
for循环可以遍历字典吗
怎么使用vscode
查看更多

客服热线:0731-85127885

湘ICP备19005950号-1  

工商营业执照信息

违法和不良信息举报

举报电话:0731-85127885 举报邮箱:tousu@csai.cn

优草派  版权所有 © 2024