python中遍历目录结构的程序
我需要创建一个程序,在这个程序中,我已经得到了一个目录路径,在这个目录中可以有n个树型目录结构,在任何目录中都可以有任意数量的.py文件。执行的一些文件是一些dnt。所以我需要用python创建一个脚本,它只运行那些到现在还没有执行的文件。有人能给我指路吗。请看一下python中遍历目录结构的程序,python,scripting,operating-system,Python,Scripting,Operating System,我需要创建一个程序,在这个程序中,我已经得到了一个目录路径,在这个目录中可以有n个树型目录结构,在任何目录中都可以有任意数量的.py文件。执行的一些文件是一些dnt。所以我需要用python创建一个脚本,它只运行那些到现在还没有执行的文件。有人能给我指路吗。请看一下os.walk() 通常的方法是使用os.walk并使用os.path.join组合完整的路径: import os import os.path def find_all_files(directory): for roo
os.walk()
通常的方法是使用
os.walk
并使用os.path.join
组合完整的路径:
import os
import os.path
def find_all_files(directory):
for root, _, filenames in os.walk(directory):
for filename in filenames:
fullpath = os.path.join(root, filename)
yield fullpath
if __name__ == '__main__':
for fullpath in find_all_files('/tmp'):
print(fullpath)
根据我的经验,dirnames
很少使用os.walk
的返回值,因此我在中省略了它
至于你关于文件是否被执行的问题,我不明白。请解释一下
import os
import os.path
def find_all_files(directory):
for root, _, filenames in os.walk(directory):
for filename in filenames:
fullpath = os.path.join(root, filename)
yield fullpath
if __name__ == '__main__':
for fullpath in find_all_files('/tmp'):
print(fullpath)