单个文件夹批量读取
两种方法
只能读取一个文件夹下的所有满足条件的文件
import pandas as pd
import numpy as np
import glob,os
path=r'E:\vscode_code\练习\数据分析练习' #批量表格所在文件路径
#这里利用正则匹配到自己想要的文件类型
files=glob.glob(os.path.join(path, "*.xlsx")) #每一个表格相同名称部分
print(files)
for file in files:
data = pd.read_excel(file)
print(data.head())
print(file)
#下面的数据是针对文件内容也基本一致的时候可以使用
'''
dl= []
for f in file:
dl.append(pd.read_csv(f,index_col=None,encoding='ANSI')) #读取每个表格
df=pd.concat(dl) #合并
'''
import os
import pandas as pd
path = r'E:\vscode_code\练习\数据分析练习'
big_file =[]
for file in os.listdir(path):
big_file.append(os.path.join(path,file))
多个文件夹的指定文件
全局读取
把所有文件夹里所有满足内容的文件放到一个数组里面
不同文件的判断类型自己可以添加
import os
def file_name(file_dir):
L=[]
for root, dirs, files in os.walk(file_dir):
#print(root)
#print(dirs)
#print(files)
for file in files:
if os.path.splitext(file)[1] == '.py':
L.append(os.path.join(root, file))
return L
file_dir = r'E:\vscode_code\algorithm'
print(file_name(file_dir))
分文件夹读取
把每个文件夹里所有满足内容的文件分别放到一个数组里面,然后多个数组再合成一个数组
import os
import glob
def file_name(file_dir):
L=[]
for root, dirs, files in os.walk(file_dir):
L.append(glob.glob(os.path.join(root, '*.py')))
return L
file_dir = r'E:\vscode_code\algorithm'
print(file_name(file_dir))