您的位置:首页 > 编程语言 > Python开发

使用os.walk()方法 分类: python 小练习 2013-08-14 10:52 1465人阅读 评论(0) 收藏

2013-08-14 10:52 996 查看
递归遍历给定目录下的内容。(路径、路径下的文件夹、路径下的文件)

其中第一个为起始路径,

第二个为起始路径下的文件夹,

第三个是起始路径下的文件.

dirpath是一个string,代表目录的路径,

dirnames是一个list,包含了dirpath下所有子目录的名字,

filenames是一个list,包含了非目录文件的名字.这些名字不包含路径信息,如果需要得到全路径,需要使用 os.path.join(dirpath, name).

遍历 D盘sql、zip格式的文件

#coding:utf-8

import os
def main(name,*types):
for root,dirs,files in os.walk(name):
for f in files:
if os.path.isfile(os.path.join(root,f)) and os.path.splitext(f)[1][1:] in types:
print os.path.join(root,f)

if __name__ == '__main__':
main(r"D:\\","sql","zip")


与线程一起:

#coding:utf-8
import threading
import os
import time
def main(name,*types):
for root,dirs,files in os.walk(name):
for f in files:
if os.path.isfile(os.path.join(root,f)) and os.path.splitext(f)[1][1:] in types:
print os.path.join(root,f)

if __name__ == '__main__':

t1=time.time()
#加入线程,搜索D盘 以.sql、.zip结尾的文件
t = threading.Thread(target=main,args=(r"D:\\","sql","zip"))
t.start()
t.join()
#计算执行时间
print time.time()-t1


# 使用os.walk()方法输出E盘下的mp3文件
import os,re
p = re.compile('.*?\.mp3')
f = os.walk(r'E:\\')  #遍历E盘
result = []
for root,dirs,files in f:
for m in files:
if p.search(m):
print os.path.join(root,m)
result.append(os.path.join(root,m))

print len(result)


#使用os.walk()
import os

def getfile(path):

for root,dirs,f in os.walk(path):

for i in f :
if i.split('.')[-1] in ('mp3','txt'):

print os.path.join(root,i)

getfile(r"E:\\")


# 使用os.walk()方法输出指定盘符下的mp3文件

import os,re
p = re.compile('.*?\.mp3')

#指定遍历的盘符
disk = ['C:\\','D:\\','E:\\','G:\\']

result = []

def getmp3(): #定义函数
for d in disk:
f = os.walk(d)#遍历每个盘符

for root,dirs,files in f:
for m in files:
if p.search(m):
print os.path.join(root,m)
result.append(os.path.join(root,m))
print len(result)

getmp3()


import os
def getmp3(disk):
for root,dirs,files in os.walk(disk):
for f in files:
if os.path.splitext(f)[1][1:]=='mp3':
print os.path.join(root,f)

if __name__=='__main__':
import string
for disk in map(lambda x:x+':\\',string.uppercase[2:6]): #变量盘符:C、D、E
getmp3(disk)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐