python递归显示C盘下所有文件及文件夹名称

import os
def gci(filepath):
    files = os.listdir(filepath)
    for fi in files:
        fi_d = os.path.join(filepath,fi)
        if os.path.isdir(fi_d):
            gci(fi_d)
        else:
            print(os.path.join(filepath,fi_d))
gci("C:")

os.listdir()方法,此方法返回一个列表,其中包含有指定路径下的目录和文件的名称
os.path.isdir()和os.path.isfile()需要传入的参数是绝对路径
常见错误:直接使用os.listdir()的返回值当做os.path.isdir()和os.path.isfile()的入参
正确用法:需要先使用python路径拼接os.path.join()函数,将os.listdir()返回的名称拼接成文件或目录的绝对路径再传入os.path.isdir()和os.path.isfile().
另外:os.path.isdir()用于判断某一对象(需提供绝对路径)是否为目录
os.path.isfile()用于判断某一对象(需提供绝对路径)是否为文件

你可能感兴趣的:(每日一练,python,os)