9
A
回答
16
With os.listdir()
or os.walk()
,取決於您是否要遞歸執行此操作。
6
你可以嘗試這樣的:
import os.path
def print_it(x, dir_name, files):
print dir_name
print files
os.path.walk(your_dir, print_it, 0)
注:os.path.walk的第三個參數是你想要的。你會得到它作爲回調的第一個ARG
2
你可以嘗試glob
:
import glob
for file in glob.glob('log-*-*.txt'):
# Etc.
但glob
不遞歸工作(據我所知),所以如果你的日誌文件夾中在那個目錄裏面,你最好在看什麼Ignacio Vazquez-Abrams發佈。
3
import os
# location of directory you want to scan
loc = '/home/sahil/Documents'
# global dictonary element used to store all results
global k1
k1 = {}
# scan function recursively scans through all the diretories in loc and return a dictonary
def scan(element,loc):
le = len(element)
for i in range(le):
try:
second_list = os.listdir(loc+'/'+element[i])
temp = loc+'/'+element[i]
print "....."
print "Directory %s " %(temp)
print " "
print second_list
k1[temp] = second_list
scan(second_list,temp)
except OSError:
pass
return k1 # return the dictonary element
# initial steps
try:
initial_list = os.listdir(loc)
print initial_list
except OSError:
print "error"
k =scan(initial_list,loc)
print " ..................................................................................."
print k
我將此代碼作爲目錄掃描器爲我的音頻播放器製作播放列表功能,它將遞歸掃描目錄中存在的所有子目錄。
1
如果您需要檢查多個文件類型,使用
glob.glob("*.jpg") + glob.glob("*.png")
水珠不關心在列表中文件的順序。如果您需要按文件名排序的文件,使用
sorted(glob.glob("*.jpg"))
2
您可以從目錄遞歸這樣的列表裏的文件。
from os import listdir
from os.path import isfile, join, isdir
def getAllFilesRecursive(root):
files = [ join(root,f) for f in listdir(root) if isfile(join(root,f))]
dirs = [ d for d in listdir(root) if isdir(join(root,d))]
for d in dirs:
files_in_d = getAllFilesRecursive(join(root,d))
if files_in_d:
for f in files_in_d:
files.append(join(root,f))
return files
2
import os
rootDir = '.'
for dirName, subdirList, fileList in os.walk(rootDir):
print('Found directory: %s' % dirName)
for fname in fileList:
print('\t%s' % fname)
# Remove the first entry in the list of sub-directories
# if there are any sub-directories present
if len(subdirList) > 0:
del subdirList[0]
相關問題
- 1. 如何遍歷目錄和子目錄中的所有文件
- 2. C++遍歷目錄中的文件
- 3. Windows批處理文件 - 如何遍歷目錄中的文件?
- 4. 如何遍歷c#.net中目錄中的所有文件?
- 5. 如何遍歷Java中目錄中的文件?
- 6. 如何遍歷Ant中的目錄
- 7. 如何遍歷Common Lisp中的目錄?
- 8. 遍歷目錄
- 9. 遍歷目錄
- 10. 如何在Java中遍歷某個目錄的文件?
- 11. 如何在提取插件的.xpi文件中的目錄中遍歷文件
- 12. Ruby中的目錄遍歷
- 13. VB.NET遍歷文件和目錄
- 14. C++遍歷文件和目錄
- 15. 遍歷對兩個文件在目錄
- 16. 如何遍歷目錄中的所有文件;如果它有子目錄,我想遍歷子目錄中的文件
- 17. Bash - 如何遍歷子目錄並複製到文件中
- 18. Maven的:遍歷文件的目錄Maven的資源目錄
- 19. 遍歷目錄中的文件,創建輸出文件linux
- 20. 循環遍歷子目錄批處理文件中的文件
- 21. 遍歷目錄樹
- 22. R:遍歷目錄
- 23. Applescript遍歷目錄
- 24. 目錄遍歷c
- 25. 如何遍歷PowerShell中的目錄並移動目錄?
- 26. 如何遍歷並獲取SQL Server目錄中的子目錄?
- 27. 如何遍歷目錄,根據文件時間排序
- 28. BASH如何遍歷目錄並提取文件名
- 29. 如何使用chdir遍歷子目錄並解析XML文件?
- 30. 如何遍歷目錄結構來查找文件
這雖然會因工作os`如何處理``path`,你應該* *總進口`os.path`明確。 – 2011-02-07 06:14:09
固定!感謝您的評論。 – luc 2011-02-07 06:35:50