python walk历遍目录

import osimport fnmatch

def is_file_match(filename, patterns):    for pattern in patterns:        if fnmatch.fnmatch(filename, pattern):            return True        return False

def find_specific_files(root, patterns=[‘*‘], exclude_dir=[]):    for root, dirnames, filenames in os.walk(root):        for filename in filenames:            if is_file_match(filename, patterns):                yield os.path.join(root, filename):                for d in exclude_dir:                    if d in dirnames:                        dirnames.remove(d)

#查找目录下所有文件for item in find_specific_files(‘.‘)    print(item)

#查找目录下所有图片patterns = [‘*.jpg‘,‘*.jpeg‘,‘*.png‘,‘*.tif‘,‘*.tiff‘]for item in find_specific_files(‘.‘,patterns)    print(item)

#查找目录树中,除dir2目录以为其他目录下的所有图片patterns1 = [‘*.jpg‘,‘*.jpeg‘,‘*.png‘,‘*.tif‘,‘*.tiff‘]exclude_dirs = [‘dir2‘]for item in find_specific_files(‘.‘,patterns1,exclude_dirs):    print(item)

#查找目录下最大的十个文件,find_specific_files已经能找到某个目录下的所有文件,只要获取文件大小并按大小排序,输出最大的十个文件即可files = {name:os.path.getsize(name) for name in find_specific_files(‘.‘)}result = sorted(files.items(),key=lambda d:d[1],reverse=True)[:10]for i in enumerate(result,1):    print(i,t[0],t[1])

原文地址:https://www.cnblogs.com/qinghe123/p/8125628.html

时间: 2024-10-20 16:01:40

python walk历遍目录的相关文章

Python 历遍目录

Automate the Boring Stuff 学习笔记 01 使用 os 模块的 walk() 函数可以实现历遍目录的操作,该函数接收一个绝对路径字符串作为必选参数,返回三个参数: 当前目录——指程序当前工作目录——名称(字符串格式) 当前目录——指程序当前所历遍到的目录——下所有子文件夹(列表格式) 当前目录——指程序当前所历遍到的目录——下所有文件(列表格式) 假设有如下文件结构: 程序代码如下: import os for folderName, subfolders, filena

用python查找在指定目录下特定文件夹下的指定文件

本代码是在python2.*上边所写. 功能:在指定目录下查找特定文件夹下的特定文件. 实例:查找在packages目录下文件夹名为values下的strings.xml文件 #!/usr/bin/env python import os def walk_dir(path): filter_file_name = 'strings.xml' for root, dirs, files in os.walk(path): for dir_item in dirs: if dir_item ==

python实例31[列出目录下所有的文件到txt]

代码: (使用os.listdir) import os def ListFilesToTxt(dir,file,wildcard,recursion):    exts = wildcard.split(" ")    files = os.listdir(dir)    for name in files:        fullname=os.path.join(dir,name)        if(os.path.isdir(fullname) & recursion

chain.from_iterable实现同时walk多个目录

chain.from_iterable实现同时walk多个目录: 注:1.注意多个目录的写格式:('aa/bb','cc/dd')2.注意chain for的写格式:for root,dirs,files in chain.from_iterable(os.walk(root) for root in dirr):3.该脚本的作用是从多目录下找出含有Images目录并且更新日期在24小时内的部分 vi a1.py #!/usr/bin/python import osimport timefro

Python OS简单文件/目录操作

Python OS简单文件/目录操作 Python的OS模块提供了丰富的文件和目录处理方法,这里指列举其中几个 参数不完全列举 删除.新建等操作 os.mkdir(path):在工作目录下创建一个名为path的文件夹 os.remove(path):删除路径为path的文件,如果不存在文件或者是一个文件夹则会抛出OSError os.rmdir(path):删除名为path的空文件夹,如果文件夹非空则会抛出OSError os.removedirs(path):递归删除文件夹 os.rename

Python批量修改一个目录文件名

#!/usr/bin/env python # -*- coding:utf-8 -*- import re  import os import time # str.split(string) 分割字符串 # '连接符'.join(list) 将列表组成字符串 def change_name(path): global i if not os.path.isdir(path) and not os.path.isfile(path): return False if os.path.isfil

python 如何引用上级目录的模块

今天,做一个测试,想在当前python中引用上层目录的模块:呃,一番搜索. 先看一下目录情况: [[email protected] test]# tree . ├── t1.py ├── t2 │   └── t2.py └── xxu     └── test.py 2 directories, 3 files 其实,最开始仅仅是想,test.py中可以调用t1.py中函数: 直接使用的效果: [[email protected] xxu]# cat test.py  #/usr/bin/e

python全栈开发目录

python全栈开发目录 linux命令 初识python python基础数据类型 函数编程.set.深浅拷贝 内置函数 文件操作 装饰器 迭代器和生成器 常用模块 初识类和对象 类和对象(进阶) 反射 异常处理 socket.IO多路复用 线程.进程.协程 HTML CSS JavaScript DOM文档操作 jQuery实例 web框架本质 Tornado mysql基础 mysql进阶 ..... 基本算法 递归--二分法查找 冒泡排序 更多 线程池

linux下python安装到指定目录

由于使用公司服务器时没有root权限,只能把python安装到个人文件夹下,使用源码包方式安装,这里记录一下. 1.python下载 cd到目录/users/w,在此目录下安装python.通过wget命令下载python源码包: $ wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz 2.解压python到当前目录 $ tar zxvf Python-2.7.9.tar.xz 3.编译与安装 a)./configure -