打印目录下所有的文件

时间:2021-09-19 08:57:09
#!/usr/bin/python

import os
import sys

def print_files(path):
# path是我们要列出哪个“目录”下的所有文件
lsdir = os.listdir(path) # 先把该目录下的文件用列表的方式赋值给lsdir
分别过滤出目录和文件:
dirs
= [i for i in lsdir if os.path.isdir(os.path.join(path, i))]
files
= [i for i in lsdir if os.path.isfile(os.path.join(path, i))]
如果是文件就打印出来:
if files:
for f in files:
print os.path.join(path, f)
如果是目录就一直递归,直到递归到文件再打印出来:
if dirs:
for d in dirs:
print_files(os.path.join(path, d))

print_files(sys.argv[
1])