python打印出指定目錄下的全部文件夾和文件名(遞歸實現)

Python很好玩,今天用Python實現了一個簡單的目錄列表功能,開始碰到了不少奇怪的問題,主要是由於本身對Python的文件操做還不是很清楚,在給出代碼以前先把遇到的幾個Python文件操做列出來: python

f=os.path.basename(path) #獲取文件名或目錄名,如若path='d://c//a.txt',那麼f='a.txt'
f=os.path.join(path,filename)#合成路徑
os.path.isfile(path)#判斷是不是普通文件,仍是路徑,如果普通文件返回True
files = os.listdir(path)#獲取path路徑下的全部文件和文件路徑,返回列表

搞清楚這些用法以後,上最後的代碼,但願路過的朋友多多指教: code

import os
def getFileStr(level):
    return '  '*level+'- '
def getDicStr(level):
    return '  '*level+'+'

def printFile(path,level):
    if os.path.exists(path):   
        files = os.listdir(path)
        for f in files :
            subpath=os.path.join(path,f)
           #print(os.path.isfile(subpath))
            if os.path.isfile(subpath):
                print(getFileStr(level)+os.path.basename(subpath))
            else:
                leveli=level+1
                print(getDicStr(level)+os.path.basename(subpath))
                printFile(subpath,leveli)

if __name__=='__main__':
    printFile(r'D://Program Files//python//Tools',1)#最後,部分結果以下:
相關文章
相關標籤/搜索