天天看點

python 列出目錄下所有檔案,如何列出一個目錄的所有檔案

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

python 列出目錄下所有檔案,如何列出一個目錄的所有檔案

實作需求的方式有許多:

NO.1 使用os.listdir#!usr/bin/env python

#-*-coding:utf-8 -*-

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 -*-

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 -*-

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會出現亂碼