簡體   English   中英

python遞歸目錄返回NONE

[英]python recursion dir return NONE

1.遞歸文件在目錄中列出,如果找到文件則返回文件路徑

2.print值為true。 但總是返回NONE

def getFilePath(filepath,fileName):
    files = os.listdir(filepath)
    for fi in files:
        fi_d = os.path.join(filepath, fi)
        if os.path.isdir(fi_d):
            getFilePath(fi_d, fileName)
        else :
            if fi_d.find(fileName) == -1:
                continue
            else:
                print fi_d
                return fi_d

我認為您應該只在函數結尾處返回,否則python返回None

另外,需要捕獲遞歸收益

def getFilePath(filepath,fileName):

    for fi in os.listdir(filepath):
        fi_d = os.path.join(filepath, fi)
        if os.path.isdir(fi_d):
            fi_d = getFilePath(fi_d, fileName)
        else :
            if fi_d.find(fileName) == -1:
                continue
            else:
                print fi_d
    return fi_d

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM