1
我是一個noob蟒蛇,我想完成這個簡單的任務。我想要訪問多個目錄中的多個目錄。我沒有多個目錄的名稱。我需要進入目錄,合併一些文件,移回目錄,然後進入下一個目錄,合併一些文件,退出它,等等........我需要當然我不會多次訪問同一個目錄。移動到一個目錄,而不知道它的名字
我環顧四周,嘗試各種命令,但什麼都沒有。
我是一個noob蟒蛇,我想完成這個簡單的任務。我想要訪問多個目錄中的多個目錄。我沒有多個目錄的名稱。我需要進入目錄,合併一些文件,移回目錄,然後進入下一個目錄,合併一些文件,退出它,等等........我需要當然我不會多次訪問同一個目錄。移動到一個目錄,而不知道它的名字
我環顧四周,嘗試各種命令,但什麼都沒有。
嘗試使用類似下面的代碼:
import os, fnmatch
def find_files(directory, pattern):
for root, dirs, files in os.walk(directory):
for basename in files:
if fnmatch.fnmatch(basename, pattern):
filename = os.path.join(root, basename)
yield filename
使用它是這樣的:
for filename in find_files('/home/', '*.html')
# do something
有時候我發現水珠是有用的:
from glob import glob
import os
nodes = glob('/tmp/*/*')
for node in nodes:
try:
print 'now in directory {}'.format(os.path.dirname(node))
with open(node, 'r') as f:
# Do something with f...
print len(f.read())
except IOError: # Because node may be a directory, which we cannot 'open'
continue
也許這將有助於:http://stackoverflow.com/questions/973473/getting-a-list-of-all-subdirectories-in-the-current-directory – 2013-05-07 04:56:29