zoukankan      html  css  js  c++  java
  • 02扫描目录树

      通常文件分布在不止一个目录之下。即使在一个目录下,模块包下也有着很多子目录,而且它们 的嵌套方式没有一定的规则。故真正需要做的是贯穿整个目录树。

    '''
    找出整个目录树种最大的python源代码文件
    '''
    import sys,os,pprint
    trace=False
    
    if sys.platform.startswith('win'):
        dirname=r'c:\'
    else:
        dirname='/usr/*'    #在Unix、Linux、Cygwin下可用
    
    allsizes=[]
    for (thisDir,subsHere,filesHere) in os.walk(dirname):
        if trace:print(thisDir)
        for filename in filesHere:
            if filename.endswith('.py'):
                if trace:print('...',filename)
                fullname=os.path.join(thisDir,filename)
                fullsize=os.path.getsize(fullname)
                allsizes.append((fullsize,fullname))
    
    allsizes.sort()
    for size in allsizes:
        pprint.pprint(size)

      以上仍有欠缺,你的计算机上可能有额外的模块安装在别处,后者可以通过模块导入搜索路径访问,而不在python源代码目录树中。为使程序更完整,我们可以进行一样的目录树搜索,不过是在模块导入搜索路径的各目录下。

  • 相关阅读:
    集合 Subset Sums
    resin config 中文(resin.xml)
    resin4 简单学习
    什么是敏捷软件测试
    10个热门IT证书
    LoadRunner监控Linux服务器
    Agile 敏捷开发
    戴明PDCA方法
    【转】什么是内存泄露? 内存泄露检测工具
    LoadRunner常见问题
  • 原文地址:https://www.cnblogs.com/start20180703/p/10313488.html
Copyright © 2011-2022 走看看