Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.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 - Fatal编程技术网

Python 在许多文件夹中循环

Python 在许多文件夹中循环,python,Python,我必须循环浏览多个文件夹,最后检查最终文件夹中是否有三个文件夹。 如果文件夹中有三个文件夹,则不执行任何操作,否则打印文件夹路径或名称。我发现很难使其正常工作, 欢迎提出任何建议,提前感谢 这就是我现在所拥有的 check_empty =['One','Two','Three'] path = '/mnt/sdc1/Username/' folders = next(os.walk('/mnt/sdc1/Mahajan/'))[1] for folder in folders: file

我必须循环浏览多个文件夹,最后检查最终文件夹中是否有三个文件夹。 如果文件夹中有三个文件夹,则不执行任何操作,否则打印文件夹路径或名称。我发现很难使其正常工作, 欢迎提出任何建议,提前感谢

这就是我现在所拥有的

check_empty =['One','Two','Three']
path = '/mnt/sdc1/Username/'
folders = next(os.walk('/mnt/sdc1/Mahajan/'))[1]
for folder in folders:
    files_in_folders = os.listdir(path +folder)
    for files_in in files_in_folders:
        for files in os.listdir(path+folder+'/'+files_in):
            for items in check_empty:
               if files in check_empty:
                    print(folder +'Good')
               else:
                    print(folder+'NotGood')
已为您提供获取文件夹中所有文件的功能:

check_empty = set(check_empty)  # set is faster for simple check in unique items
for root, dirs, files in os.walk('/mnt/sdc1/Mahajan/'):
    for file in files:
        filename = os.path.basename(file)
        if filename in check_empty:
            print(root + 'Good')
        else:
            print(root + 'NotGood')
已为您提供获取文件夹中所有文件的功能:

check_empty = set(check_empty)  # set is faster for simple check in unique items
for root, dirs, files in os.walk('/mnt/sdc1/Mahajan/'):
    for file in files:
        filename = os.path.basename(file)
        if filename in check_empty:
            print(root + 'Good')
        else:
            print(root + 'NotGood')

对于这个特定的用例,我可能是错误的,但是我通过经验和讲座得知,通常,当您在Python中拥有超过2个嵌套循环时,您正在做一些错误的事情。那么,如果我要从一个空白的板条开始,我该如何处理这个问题?您应该考虑使用哪一个或。但我通过经验和讲座学到,通常,当你在Python中有2多个嵌套循环时,你做了一些错误的事情。那么,如果我从空白的板条开始,我该如何处理这个问题?你应该考虑使用哪一个。任何提示对不起,请尝试使用
os.path.basename
而不是让我试试这个即时消息获取模块没有属性basename!,任何提示,请尝试改用
os.path.basename