Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python通过根目录循环_Python_Loops_Foreach_Path_Operating System - Fatal编程技术网

Python通过根目录循环

Python通过根目录循环,python,loops,foreach,path,operating-system,Python,Loops,Foreach,Path,Operating System,我一直在试图弄清楚如何在根目录和子目录之间循环并搜索文件。如果存在特定文件,则运行脚本 文件结构示例: 根 -文件夹1 --TEST.txt -文件夹2 --[无文件] -文件夹3 --TEST.txt 我试图实现的是将.py文件放在根目录中。运行时,它将在根目录中的每个文件夹上循环,如果文件TEST.txt,则执行一些处理 注: 根目录中始终存在文件夹 需要处理的地方将有一个名为TEST.txt的文件 肯定会有一些文件夹没有TEST.txt 伪代码: 从根目录打开文件夹1。若有TEST.txt

我一直在试图弄清楚如何在根目录和子目录之间循环并搜索文件。如果存在特定文件,则运行脚本

文件结构示例: 根 -文件夹1 --TEST.txt -文件夹2 --[无文件] -文件夹3 --TEST.txt

我试图实现的是将.py文件放在根目录中。运行时,它将在根目录中的每个文件夹上循环,如果文件TEST.txt,则执行一些处理

注: 根目录中始终存在文件夹 需要处理的地方将有一个名为TEST.txt的文件 肯定会有一些文件夹没有TEST.txt

伪代码: 从根目录打开文件夹1。若有TEST.txt,那个么做一些很酷的事情,然后“cd../”并重复这个过程,但要查看文件夹2。
检查完所有文件夹后停止循环

此代码应该能够在所有文件夹和子文件夹中搜索文件

import os

thisdir = os.getcwd()
for root, dirs, files in os.walk(thisdir):
    if 'TEST.txt' in files:
        #do some processing

如果您想以某种方式执行或分析该文件,加入“root”和文件名应该可以让您访问该文件。

查看os.walk和os.listdir:谢谢,我从来都不知道这些。将对它们进行更多的研究。完美,在虚拟机上快速测试,这正是我所需要的。非常感谢