• python文件操作练习题


    写脚本实现:把电脑里面某个目录 所有超过5兆的文件 列出来;
    方法一:首先想到的是用递归方法,依次判断os.listdir列出当前目录下文件或者文件夹,如果是文件,判断大小处理,是文件夹,递归查找。
    #coding=utf-8
    import os
    count=0
    #参数path为绝对路径,size为文件限制单位M
    def findSizeFile(path,size):
        #全局变量,统计文件个数
        global count
        if os.path.isfile(path):
            if os.path.getsize(path)>size*1024*1024:
                print u"文件:",os.path.basename(path).decode('gb2312'), u"大小:",os.path.getsize(path) , u"路径在:",os.path.dirname(path).decode('gb2312')
                count+=1
            else:
                pass
        else:
            for p1 in os.listdir(path):
                findSizeFile(os.path.join(path,p1),size)

    方法二:使用os.walk遍历目录,返回三元组(dirpath,dirnames,finenames),dirpath表示当前的路径,是一个字符串;dirnames是一个列表,表示当前路径下的子目录;filenames是一个列表,表示当前路径下包含的文件;

    #coding=utf-8
    import os
    count=0
    #参数path为绝对路径,size为文件限制单位M
    def findSizeFile2(path,size):
        global count
        tuples=os.walk(path)
        for root,dirs,files in tuples:
            for file in files:       
                if os.path.getsize(os.path.join(root,file))>size*1024*1024:
                    count+=1
                    print u"文件:",os.path.join(root,file),u"大小:",os.path.getsize(os.path.join(root,file))

  • 相关阅读:
    sql 存储过程 in 的两种写法
    C# 开发Chrome内核浏览器(WebKit.net)
    IE6、IE7、IE8、Firefox兼容性
    360浏览器兼容模式 不能$.post (不是a 连接 onclick的问题!!)
    jquery树形表格实现方法
    C#递归累计到父行
    树形结构 DropDownList
    ASP.NET 防止重复提交提示层
    JavaScriptSerializer 时间格式化
    去标签获取网页内容
  • 原文地址:https://www.cnblogs.com/josie-xu/p/10470133.html
Copyright © 2020-2023  润新知