通过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
函数。
以上是获取文件夹下所有文件名的几种常用方法,希望对你有所帮助!