我正在嘗試生成一個文本文件,其中包含當前目錄中的所有文件以及其所有擴展名爲".asp"
的子目錄的列表。什麼是最好的方法來做到這一點?如何在給定擴展名的當前目錄及其子目錄中創建文件列表?
回答
你會想使用os.walk這將使這個微不足道的。
import os
asps = []
for root, dirs, files in os.walk(r'C:\web'):
for file in files:
if file.endswith('.asp'):
asps.append(file)
import os
import glob
asps = []
for root, dirs, files in os.walk('/path/to/dir'):
asps += glob.glob(os.path.join(root, '*.asp'))
import fnmatch
for root, dirs, files in os.walk('/path/to/dir'):
asps += fnmatch.filter(files, '*.asp')
像os.path.join()。我想象OP會發現他需要完整的路徑來找到找到的文件。 – hughdbrown 2009-08-13 22:01:42
當我做了第二個解決方案時,它只是反覆搜索同一個目錄。我認爲它需要這個: >>> asps = [] >>> p = r'C:\ temp' >>> for root,dirs,os.walk中的文件(p): ... asps + = fnmatch.filter([os.path.join(root,file)for file in files],「* .txt」) – hughdbrown 2009-08-13 22:09:26
嗯,不太對。我在根目錄下的多個目錄中具有相同的文件。它看起來像重複搜索相同的目錄,但不是。如果您的第一個解決方案與附加的路徑一樣,它仍然會更好。 – hughdbrown 2009-08-13 22:35:57
- 1. 如何從當前目錄及其子目錄刪除特定文件?
- 2. 如何在一個目錄及其子目錄中除特定擴展名的所有文件外?
- 3. 使用Perl刪除目錄和子目錄中給定擴展名的文件
- 4. 如何在c目錄及其子目錄中搜索文件?
- 5. 當前目錄設置Cookie及其子目錄中唯一
- 6. 在目錄樹中查找給定擴展名的文件
- 7. 如何在php中列出目錄及其子目錄的所有文件?
- 8. 獲取目錄中給定擴展名的文件
- 9. npm如何安裝當前目錄以及包含package.json文件的子目錄?
- 10. 如何獲取目錄和文件名及其子文件夾
- 11. 在當前目錄中搜索特定擴展名的文件C
- 12. 在組合框目錄列表中隱藏文件擴展名
- 13. 獲取給定目錄及其子目錄中所有文件的路徑和文件名
- 14. 在目錄和子目錄中查找帶擴展名的文件?
- 15. 讀取目錄及其子目錄中的JSON文件
- 16. 統計目錄及其子目錄中的所有文件
- 17. 打印目錄及其子目錄中的所有文件
- 18. 獲取帶有擴展名的目錄中的文件列表
- 19. 如何從dir及其所有子目錄中刪除所有.php擴展名?
- 20. 查找文件擴展名的目錄
- 21. 如何獲取bash中的目錄及其所有子目錄中的文件?
- 22. 使用擴展的子目錄文件
- 23. 如何打印目錄和子目錄的列表以及子目錄中的文件
- 24. 如何限制在PHP中訪問目錄及其子目錄?
- 25. 如何使用自定義擴展在文檔目錄中創建文件?
- 26. 如何獲取python目錄中的文件名列表(沒有擴展名)?
- 27. Python打印目錄和子目錄中的文件名和擴展
- 28. 使用shell腳本重命名目錄及其子目錄中的文件夾?
- 29. 擴展名'.cshtml'在子目錄
- 30. 如何從特定目錄和所有子目錄中搜索特定擴展名的文件
或'平均價格= [(如果在文件的文件的文件file.endswith ('.asp'))for _,__,os.walk(path)]中的文件],我認爲這將是「Pythonic」的做法(儘管對於完全相同的東西它實際上只是略短一些的語法) 。 – 2009-08-13 21:01:03
1襯裏很不錯,但在可讀性方面並不完全是Pythonic。 – Unknown 2009-08-13 21:02:38
這會遞減目錄但不存儲文件的路徑。 – hughdbrown 2009-08-13 22:12:41