玩蛇网提供最新Python编程技术信息以及Python资源下载!
python零基础培训

Python3.2完成简单文件搜索的代码

python 培训

这是依赖python 3.2来完成的简单文件搜索的方法。希望大牛们能帮我再改进下代码。

程序中我用到了python os\time、python repython threading多线程模块。

import os
import time
import re
import threading

class brid:
    def __init__(self):
        th=threading.Thread(target=self.dt(),args="")
        th.start()
        threading.Thread.join(th)
        pass

    def dt(self):
        a=True
        while a is True:
            print("xx")
            time.sleep(3)
            a=False

    def FileSearch(self,keywords,path):
        print("searching...")
        results=[]
        i=0
        j=0

        time_start=time.time()

        for root,dirs,filenames in os.walk(path):
            for file in filenames:
                i=i+1
                if re.search(keywords,file):
                    j=j+1
                    filef=os.path.join(root,file)
                    print(filef)
                    results.append(filef)

        time_end=time.time()
        time_used=time_end-time_start
        print("符合的文件 : ",j)
        print("共扫描文件 : ",i)
        print("花费时间 : ",time_used)
        return results

    def FileSearchEx(self):
        keywords=input("the keywords : ")
        path=input("target dir : ")
        destination=input("the results : ")
        print("searching...")
        results=[]
        i=0
        j=0
        time_start=time.time()

        for root,dirs,filenames in os.walk(path):
            for file in filenames:
                i=i+1
                if re.search(keywords,file):
                    j=j+1
                    filef=os.path.join(root,file)
                    results.append(filef)

        time_end=time.time()
        time_used=time_end-time_start
        fh=open(destination,"w+")
        for t in results:
            fh.write("\n"+t)
        fh.write("\n符合的文件 : "+str(j))
        fh.write("\n共扫描文件 : "+str(i))
        fh.write("\n花费时间 : "+str(time_used))
        fh.close()
        os.system(destination)
        return results
        #www.iplaypython.com

if __name__=="__main__":
    yz=brid()
    yz.FileSearchEx()
            

站长推荐阅读相关内容:
linux基础入门教程

玩蛇网文章,转载请注明出处和文章网址:http://www.iplaypython.com/code/text-file/tf2354.html [复制]



微信扫描下图可直接关注Python公众号

玩蛇网Python QQ群,欢迎加入: ① 279974227 玩蛇网Python新手群
修订日期:2016年04月19日 - 10时35分19秒 发布自玩蛇网

我要分享到:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
相关文章推荐
别人正在看
特别推荐
站长推荐:
去顶部去底部