#!/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])