python筛选特定文件返回上一级目录

需求:给一个大的路径,想要筛选包含特定文件的文件夹目录,文件夹下子文件夹内的东西不做检索。

import os
from natsort import natsorted

g = os.walk(r'g:\test')
# 获取所有文件及子文件
List = []
for path,dir_list,file_list in g:
    dir_list = natsorted(dir_list)
    for dir_name in dir_list:
        List.append(os.path.join(path, dir_name))

# print(List)
print(len(List))
# 筛选下一级目录包含特定文件的文件夹(没有遍历子文件夹)
list2 = []
for i in List:
    list = os.listdir(i)
    for x in range(0,len(list)):
        path = os.path.join(i,list[x])
        if '.dcm' in list[x].lower():
            if i not in list2:
                list2.append(i)
print(len(list2))


# 目录下子文件获取
# rootdir = r'G:\test\EXACT_airway'
# list = os.listdir(rootdir)
# for i in range(0,len(list)):
#     path = os.path.join(rootdir,list[i])
#     print(path)

# 判断'.dcm'文件
# List2 = []
# for i in List:
#     for dirName, subdirList, fileList in sorted(os.walk(i)):
#         fileList = natsorted(fileList)
#         for filename in fileList:
#             if ".dcm" in filename.lower():  # 判断文件是否为dicom文件
#                 if (i not in List2):
#                     List2.append(i)

# 去重
# List3 = []
#
# for element in list2:
#     if (element not in List3):
#         List3.append(element)
#
# print(len(List3))
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值