利用Python获取文件夹下所有文件实例代码
前言
使用Python获取文件夹下的所有文件时,存在多种方式。
1. os.listdir
os.listdir:参数为文件夹路径,可以返回文件夹下的所有子文件夹、文件名称。
示例:
import os
path = 'D:\Workspace'
for file_name in os.listdir(path):
print(file_name)
注意,不能返回子文件夹下的文件,并且仅返回名称。
2. os.walk
os.walk:参数为文件夹路径,返回3个内容:绝对路径、子文件夹、文件名。 此方法可以遍历文件夹下的所有文件、子文件及内的所有文件:
例如:
D:/workspace/folder/text1.txt
D:/workspace/folder/text2.txt
此方法在输入的path为D:/workspace时,第一次遍历会获取/workspace下的所有文件和文件夹;第二次遍历会获取/workspace/folder下的所有文件和文件夹。因此需要对结果进行循环,以获取所有文件。
示例:
import os
path = 'D:\Workspace'
for root, dirs, files in os.walk(path):
print(root)
print(dirs)
print(files)
返回:
D:\Workspace
['folder']
[]
D:\Workspace\folder
[]
['text1.txt', 'text2.txt']
3. glob.glob
glob:参数为路径以及文件过滤条件,若不设置过滤需填写为*,此函数会返回包括路径的文件夹和文件名
示例:
import glob
path = 'D:\Workspace\folder\*'
for file_abs in glob.glob(path):
print(file_abs)
返回:
D:\Workspace\folder\text1.txt
D:\Workspace\folder\text2.txt
注意,不能返回子文件夹下的文件,并且返回文件名与绝对路径。
附:Python获取指定目录下的文件夹名列表和文件名列表
import os
# enter of program
if __name__ == '__main__':
# input
input_path = 'D:/data/pycodes/books/'
# initialize
dir_list = []
file_list = []
# process
for root, dirs, files in os.walk(input_path):
dir_list = dirs
file_list = files
break
# output
print(dir_list, len(dir_list))
print(file_list, len(file_list))
总结
到此这篇关于利用Python获取文件夹下所有文件的文章就介绍到这了,更多相关Python获取文件夹所有文件内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341