Python获取目录下的所有文件
1、打开Python开发工具IDLE,新建‘dir.py’,并写代码如下:import osprint (os.getcwd())这个os.getcwd()函数可以获取当前文件所在目录
2、F5运行程序,Shell打印出当前目录:C:\Users\123\AppData\Local\Programs\Python\Python36
3、继续编写代码,获取目录下的文件:import ospath = os.getcwd()print (os.listdir(path))os.listdir获取目录下所有文件
4、F5运行程序,Shell打印出当前目录下所有文竭惮蚕斗件列表:['choosepx.py', '稆糨孝汶;code.py', 'dir.py', 'DLLs', 'Doc', 'empty_book.xlsx', 'empty_book1.xlsx', 'empty_book2.xlsx', 'empty_book23.xlsx', 'excel.py', 'excel2.py', 'include', 'Lib', 'libs', 'LICENSE.txt', 'log.py', 'myClass.py', 'myexcept.py', 'mylog.txt', 'NEWS.txt', 'pool.py', 'property.py', 'python.exe', 'python3.dll', 'python36.dll', 'pythonw.exe', 'resquests.py', 's.xlsx', 'Scripts', 'tcl', 'test.py', 'test.xlsx', 'thread.py', 'timeit.py', 'Tools', 'vcruntime140.dll', '__pycache__', '文件操作.py']
5、改写代码,做一个可以递归获取指定目录的所有文件的函数,代码如下:import osresult = []de熠硒勘唏f get_all(cwd): get_dir = os.listdir(cwd) for i in get_dir: sub_dir = os.path.join(cwd,i) if os.path.isdir(sub_dir): get_all(sub_dir) else: result.append(i) if __name__ == "__main__": get_all(r'D:\new') print (result)为了测试方便取D:\new目录的文件,比较少。
6、F5运行程序,Shell中打印出D:\new目录下所有文件:['新建 Microsoft Word 文档.docx', '新建文本文档.txt']