python查看目录下所有的子目录和子文件

python递归遍历目录结构

我喜欢第一种

方法1

import json, os

def list_dir(path, res):

  for i in os.listdir(path):
temp_dir = os.path.join(path, i)
if os.path.isdir(temp_dir):
temp = {"dirname": temp_dir, 'child_dirs': [], 'files': []}
res['child_dirs'].append(list_dir(temp_dir, temp))
else:
res['files'].append(i)
return res def get_config_dirs():
res = {'dirname': 'root', 'child_dirs': [], 'files': []}
return list_dir(r'/opt/code/my_code/zk_css', res) if __name__ == '__main__':
print(json.dumps(get_config_dirs()))

参考网站:http://lvmy.iteye.com/blog/1258824

方法2:

import os
def gci(filepath):
#遍历filepath下所有文件,包括子目录
files = os.listdir(filepath)
for fi in files:
fi_d = os.path.join(filepath,fi)
if os.path.isdir(fi_d):
gci(fi_d)
else:
print(os.path.join(filepath,fi_d)) #递归遍历/root目录下所有文件
gci('/opt/code/my_code/zk_css/common')

python 查看目录下所有目录和文件的更多相关文章

  1. 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本

    摘自:http://blog.csdn.net/forandever/article/details/5711319 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本 ...

  2. du 使用详解 linux查看目录大小 linux统计目录大小并排序 查看目录下所有一级子目录文件夹大小 du -h --max-depth=1 |grep [

    常用命令 du -h --max-depth=1 |grep [TG] |sort   #查找上G和T的目录并排序 du -sh    #统计当前目录的大小,以直观方式展现 du -h --max-d ...

  3. Python实现插件机制——自动import一个目录下的所有.py文件

    假设有这样一个目录结构: /src          main.py          /plugins                __init__.py                a.py  ...

  4. Python 遍历目录下的子目录和文件

    import os A: 遍历目录下的子目录和文件 for root,dirs ,files in os.walk(path) root:要访问的路径名 dirs:遍历目录下的子目录 files:遍历 ...

  5. java 提取目录下所有子目录的文件到指定位置

    package folder; import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundExcept ...

  6. gen目录无法更新,或者gen目录下的R.JAVA文件无法生成

    gen目录无法更新,或者gen目录下的R.JAVA文件无法生成 1.gen目录的用处 android gen目录下的R.java并不是由用户创建,而是android工程本身将android的资源进行自 ...

  7. php源码之遍历目录下的所有的文件

    <?php //遍历目录下的所有的文件 -- 递归调用 // http://www.manongjc.com/article/1495.html function get_all_file1($ ...

  8. 使用 NIO.2 遍历目录下所有的Java文件

    package wellGrounded; import java.io.IOException; import java.nio.file.FileVisitResult; import java. ...

  9. 检测某一目录下md5相同的文件

    import org.apache.commons.codec.digest.DigestUtils; import org.apache.commons.io.IOUtils; import jav ...

  10. Java算法面试题:编写一个程序,将e:\neck目录下的所有.java文件复制到e:\jpg目录下,并将原来文件的扩展名从.java改为.jpg

    package com.swift; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; i ...

随机推荐

  1. [Windows Azure] Building worker role A (email scheduler) for the Windows Azure Email Service application - 4 of 5.

    Building worker role A (email scheduler) for the Windows Azure Email Service application - 4 of 5. T ...

  2. 【Linux技术】autotools制作makefile过程详解

    Preface Makefile固然可以帮助make完成它的使命,但要承认的是,编写Makefile确实不是一件轻松的事,尤其对于一个较大的项目而言更是如此.那么,有没有一种轻松的手段生成Makefi ...

  3. export default与export的区别

    1.export default 和export都可以用于导出常量,函数,文件,模块等: 2.可以在模块中通过import+(常量 | 函数 | 文件 | 模块)名的方式,将其导入,以便能够对其进行使 ...

  4. Android下基于PCM的音频渲染

    环境准备 请按照我之前的文章-Android下基于SDL的位图渲染,安装必要的开发环境. 实践篇 这里主要参考Beginning SDL 2.0(6) 音频渲染及wav播放,只不过将源从WAV文件改成 ...

  5. 关于fork()函数的精辟分析

    http://blog.csdn.net/yanh_lzu/article/details/2311644 第一贴:cu上关于fork()函数的精辟分析   声明:在别人的博客上看到这篇文章,真的很精 ...

  6. Django-管理站点重写admin模板

    参考链接:https://blog.csdn.net/u013378306/article/details/79023242 使用Django的admin管理工具,可以快速的构建自己的管理平台,使用D ...

  7. tf.truncated_normal

    tf.truncated_normal truncated_normal( shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name ...

  8. C#学习笔记(18)——C#构造函数中this和base的使用

    说明(2017-7-21 10:29:44): 1. 关于构造函数里的this和base,在网上查了很多资料,但都没有讲的很清楚的,或者是能让我看懂的,感觉都是叽叽歪歪,罗里吧嗦,磨磨唧唧的,有的直接 ...

  9. Android DrawLayout + ListView 的使用(一)

    想做一个APP,设计中有侧边栏这个功能,所以现在开始学习下侧边栏的实现. 在官方的UI空间中已经给出了DrawerLayout这个侧滑的菜单空间. 因为在使用DrawerLayout的时候遇到了些问题 ...

  10. [转]cron表达式详解

    原文地址:https://www.cnblogs.com/linjiqin/archive/2013/07/08/3178452.html Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6 ...