python之获取目录下的文件名

背景:为了统计一个目录下所有文件名,并且写到文件中

工具:python的模块os.walk

功能:遍历目录下的所有子文件及其子文件夹,如果有子文件夹的话,会继续以子文件夹为目录递归遍历

返回:如果只有文件的话,只返回一个元组(当前目录字符串,文件夹名列表,文件名列表);如果还有文件夹的话,返回多个元组

#coding=utf-8
import os

def file_name(file_dir): 
    for root, dirs, files in os.walk(file_dir):
        #print(root) #当前目录路径
        #print(dirs) #当前路径下所有子目录
        print(files) #当前路径下所有非目录子文件
    return files
'''
def file_name(file_dir): 
    L=[] 
    for root, dirs, files in os.walk(file_dir):
        for file in files:
            if os.path.splitext(file)[1] == '.jpeg':
                L.append(os.path.join(root, file))
    return L

def listdir(path, list_name):
    for file in os.listdir(path):
        file_path = os.path.join(path, file)
        if os.path.isdir(file_path):
            listdir(file_path, list_name)
        elif os.path.splitext(file_path)[1]=='.jpeg':
            list_name.append(file_path)



mydir = r'C:\\Users\\Administrator\\Desktop\\停电\\2018'
 
if __name__ == '__main__':
    for pathstr,dirlist,filelist in os.walk(mydir):
        for file in filelist:
            with open("file.txt","ab") as f:
                f.write(file+'\n')
'''
mydir = r'C:\\Users\\Administrator\\Desktop\\停电\\2018'
if __name__ == '__main__':
    c = file_name(mydir)
    for i in c:
        print(i)
 

猜你喜欢

转载自blog.csdn.net/wenyusuran/article/details/82348286