遍歷檔案目錄,查詢txt或iso檔案。

2021-05-01 17:25:22 字數 1426 閱讀 3748

import time

x = time.clock()

#方法1

import string, os, sys 

def get_path(dir):

filelist = ''

for root, dirs, files in os.walk(dir):

for name in files:

if name.lower().find('.txt') != -1 or name.lower().find('.iso') != -1:

fp = os.path.join(root, name)

if os.path.isfile(fp) and not os.path.islink(fp):

filelist = filelist + fp + '/n'

f = open(r'd:/share/mspt/filelist-1.txt','aw')

f.write(filelist)

f.close()

dir = r'd:/share/mspt/msdn' 

for n in range(100):

get_path(dir)

y = time.clock()

f = open(r'd:/share/mspt/filelist-1.txt','aw')

f.write('--------------------------------/n')

f.close()

z = time.clock()

#方法2

import os

def ls(arg, dirname, files):

filelist = ''

for x in files:

if os.path.isfile(dirname+'//'+x) and not os.path.islink(dirname+'//'+x) and (x.lower().find('.txt')!=-1 or x.lower().find('.iso')!=-1):

filelist = filelist + dirname + '//' + x + '/n'

f = open(r'd:/share/mspt/filelist-1.txt','aw')

f.write(filelist)

f.close()

for n in range(100):

os.path.walk(r'd:/share/mspt/msdn', ls, none)

zd = time.clock()

print y-x

print zd-z

raw_input()

#3.46223010829

#6.35496271671

#通過測試發現,方法1的速度快於方法2

#但是方法2的更加簡單一些

glob 檔案或目錄查詢

glob模組是最簡單的模組之一,內容非常少。用它可以查詢符合特定規則的檔案或目錄 含相對或絕對路徑 跟使用windows下的檔案搜尋差不多。在python中,glob模組是用來查詢匹配的檔案的 在查詢的條件中,需要用到unix shell中的匹配規則 匹配所有字元 匹配乙個字元 匹配指定範圍內的字元...

遍歷目錄查詢檔案

hresult findfile cstdstring directory,cstdstring filename directory t f 新建資料夾 filename t memset tmpdirexpr,0,max path sizeof tchar strcat tmpdirexpr,d...

查詢目錄或檔案是否存在

在專案中可能會遇見查詢某個路徑或者檔案是否存在的情況,如果不存在就新建。在看 的時候發現有人這樣實現 dir opendir g logdir if dir nullp else 對應檔案的話會這樣寫 dir fopen g logdir if dir nullp else 目的很簡單,就是查詢目錄...