1. 程式人生 > >python列出制定目錄下所有的檔案及資料夾

python列出制定目錄下所有的檔案及資料夾

首先,這類需求用到檔案及檔案路徑的操作,需要用到的庫是os庫、glob庫。

實現需求的方式有許多:

NO.1 使用os.listdir

#!usr/bin/env python
#-*-coding:utf-8 -*-
#Author:匹夫

import os

def main():
    '''
    輸出該路徑下所有的資料夾及檔名字
    '''
    dir_aim = raw_input("請輸入目標路徑:")
    for filename in os.listdir(dir_aim):
        print filename
if __name__=='__main__':
    main()

NO.2 使用glob 模組

#!usr/bin/env python
#-*-coding:utf-8 -*-
#Author:匹夫

import glob

def main():
    '''
    輸出該路徑下所有的資料夾及檔案的路徑
    '''
    dir_aim = raw_input("請輸入目標路徑:")
    for filename in glob.glob(dir_aim):
        print filename
if __name__=='__main__':
    main()

可以通過新增限定來進行檔案型別篩選

例如篩選exe檔案:

\*.exe

NO.3 使用os.walk遞迴遍歷

#!usr/bin/env python
#-*- utf-8 -*-
#Author: 敬蒼生

import os

def main():
    '''
    讀取制定路徑下的所有檔案
    '''
    dir_aim = raw_input("請輸入所要檢視的檔案目錄:")
    for root, dirs, files in os.walk(dir_aim):
        print 'root:', root
        if files:
            print 'File:'
            for file in files:
                print file,
            print ''
        if dirs:
            for dir in dirs:
                print dir

if __name__=='__main__':
    main()

當檔案路徑下存在中文時,print會出現亂碼,解決方法請看下一篇文章。