通过Python获取文件夹下的所有文件名保存

在日常的文件操作中,我们经常需要获取某个文件夹下的所有文件名,并进行进一步的处理。Python作为一门功能强大的编程语言,提供了多种方法来完成这个任务。本文将介绍几种常用的方法,并给出相应的代码示例。

方法一:使用os模块的listdir函数

os模块是Python中常用的一个提供了访问操作系统功能的模块。listdir函数是os模块中一个用于获取指定文件夹下所有文件名的函数。

import os

# 获取当前文件夹下的所有文件名
files = os.listdir('.')
print(files)

上述代码中的'.'表示当前文件夹,你可以根据需要替换为其他文件夹的路径,比如'./myFolder'

注意,listdir函数会返回指定文件夹下所有文件和文件夹的名称,如果你只想获取文件名而不包括文件夹名,可以使用下面的代码:

import os

# 获取当前文件夹下的所有文件名
files = [f for f in os.listdir('.') if os.path.isfile(f)]
print(files)

方法二:使用glob模块的glob函数

glob模块是Python中用于查找符合特定规则的文件路径名的模块。glob函数可以根据特定的模式匹配获取文件路径名。

import glob

# 获取当前文件夹下的所有文件名
files = glob.glob('*')
print(files)

上述代码中的'*'表示匹配当前文件夹下的所有文件,你可以根据需要替换为其他匹配规则,比如'*.txt'表示匹配当前文件夹下的所有以.txt结尾的文件。

方法三:使用os.walk函数

os模块中的walk函数用于遍历指定文件夹及其子文件夹下的所有文件和文件夹。通过遍历可以获取所有文件的路径名。

import os

# 获取当前文件夹下的所有文件名
files = []
for root, dirnames, filenames in os.walk('.'):
    for filename in filenames:
        files.append(os.path.join(root, filename))
print(files)

上述代码中的'.'表示当前文件夹,你可以根据需要替换为其他文件夹的路径。

值得注意的是,os.walk函数会遍历指定文件夹下的所有文件和文件夹,如果你只想获取文件名而不包括文件夹名,可以使用下面的代码:

import os

# 获取当前文件夹下的所有文件名
files = []
for root, dirnames, filenames in os.walk('.'):
    for filename in filenames:
        files.append(filename)
print(files)

总结

通过以上三种方法,我们可以方便地获取指定文件夹下的所有文件名。你可以根据具体的需求选择合适的方法。如果你只需获取当前文件夹下的文件名,推荐使用os.listdir函数;如果你需要匹配特定规则的文件名,则可使用glob.glob函数;如果你需要遍历文件夹及其子文件夹下的所有文件,可以使用os.walk函数。

以上是获取文件夹下所有文件名的几种常用方法,希望对你有所帮助!