玩蛇网提供最新Python编程技术信息以及Python资源下载!

python在电脑硬盘中查找内容的方法

python 培训

python在电脑硬盘中查找内容的方法,是实现需要查找文字内容,可以查目录,也可以查文件里面的内容。运行时间可能比较慢,做为初学python的我,代码写的不够好,希望各位予以指点赐教,这里贴出来分享一下!

#coding:cp936

import os
#保存当前有的磁盘
def existdisk():
	curdisks = []
	allDisks = ['C:', 'D:', 'E:', 'F:', 'G:', 'H:', 'I:', 'J:', 'K:', \
			    'L:', 'M:', 'N:', 'O:', 'P:', 'Q:', 'R:', 'S:', 'T:', \
                'U:', 'V:', 'W:', 'X:', 'Y:', 'Z:', 'A:', 'B:']
	for disk in allDisks:
		if os.path.exists(disk):
			curdisks.append(disk)
			
	return curdisks

#目录中含有查找的字符
def SearchDirFile(path, src):
	if not os.path.exists(path):
		print "%s 路径不存在" % path
	for root , dirs, files in os.walk(path, True):
		if - 1 != root.find(src):   #路径名中是否存在要查找的字符
			print root  
		for item in files:
			 path = os.path.join(root, item)
			 if - 1 != path.find(src):         #文件列表中是否有要查找的字符
			 	print path

			 	
			 	
#查找文件内容中有要查找的字符
def SearchFile(path, src):	
	if not os.path.exists(path):
		print "%s 路径不存在" % path
	for root, dirs, files in os.walk(path, True):
		for item in files:
			path = os.path.join(root, item)
			
			try:
				f = open(path, 'r')
				for eachline in f.readlines():
					if - 1 != eachline.find(src):    #文本内容中是否有要查找的字符
						print path
						f.close()
						break
			except:
				pass
	
#www.iplaypython.com	
#查找当前所有磁盘目录下是否有要找的字符
def   SearchAllDirFile(src):	
	curdisks = existdisk()
	for disk in curdisks:
		disk = disk + '\\'
		SearchDirFile(disk, src)
	print "完成搜索"
	
#查找当前所有磁盘目录文件内容下是否有要找的字符
def   SearchALLFile(src):			
	curdisks = existdisk()
	for disk in curdisks:
		disk = disk + "\\"
		SearchFile(disk, src)
	print "完成搜索"
	
	
SearchALLFile('XXX')

玩蛇网原创,转载请注明文章出处和来源网址:http://www.iplaypython.com/code/other/o2297.html



微信公众号搜索"玩蛇网Python之家"加关注,每日最新的Python资讯、图文视频教程可以让你一手全掌握。强烈推荐关注!

微信扫描下图可直接关注

玩蛇网Python新手QQ群,欢迎加入: ① 240764603 玩蛇网Python新手群
文章发布日期:2016-04-22 14:38 玩蛇网 www.iplaypython.com

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