Python遍历文件夹下所有文件

一、目录结构

Python遍历文件夹下所有文件_第1张图片

二、代码

import glob
dir = 'test'
samples = glob.glob(dir+'/**',recursive=True)

print(samples)
print(len(samples))

三、结果

['test\\', 'test\\1.txt', 'test\\new', 'test\\new\\2.txt', 'test\\new\\3.txt', 'test\\new\\new2', 'test\\new\\new2\\4.txt']
7

四、备注

  1. 只遍历当前文件夹(不递归遍历)
import glob
dir = 'test'
samples = glob.glob(dir+'/*')

print(samples)
print(len(samples))
['test\\1.txt', 'test\\new']
2
  1. 遍历当前文件夹下所有的.txt
import glob
dir = 'test'
samples = glob.glob(dir+'/*.txt')

print(samples)
print(len(samples))
['test\\1.txt']
1
  1. 遍历二级文件夹下所有的.txt
import glob
dir = 'test'
samples = glob.glob(dir+'/*/*.txt')

print(samples)
print(len(samples))
['test\\new\\2.txt', 'test\\new\\3.txt']
2
  1. 只要文件名
import os
import glob

dir = './test'
samples = glob.glob(dir + '/**', recursive=True)
del samples[0]
samples = list(map(os.path.basename, samples))
print(samples)
print(len(samples))
  1. 不调用库
dir = './test'
for file_path in os.listdir(dir):
    if file_path.endswith(".txt"):
        file_path = os.path.join(dir, file_path)
        print(os.path.basename(file_path).rstrip(".txt"))

参考文献

  1. python之glob模块以及根据路径获取文件名

你可能感兴趣的:(Python)