Python入门之os.walk()方法合并文件

os.walk方法,主要用来遍历一个目录内各个子目录和子文件。

os.walk(top, topdown=True, onerror=None, followlinks=False) 

可以得到一个三元tupple(dirpath, dirnames, filenames), 

第一个为起始路径,第二个为起始路径下的文件夹,第三个是起始路径下的文件。

dirpath 是一个string,代表目录的路径,

dirnames 是一个list,包含了dirpath下所有子目录的名字。

filenames 是一个list,包含了非目录文件的名字。

这些名字不包含路径信息,如果需要得到全路径,需要使用os.path.join(dirpath, name).

合并文件

import os
import pandas as pd
import time

t1 = time.time()
l = []
n=0
for file in os.walk('D:/fghgh'):
    #'file是一个元祖 有3部分 tupple(dirpath, dirnames, filenames), '
    for table in file[2]:
        path = file[0] + '/' + table
        data = pd.read_excel(path,header=0,encoding='gbk')
        data['riqi'] = table
        data['riqi'] = data['riqi'].str.split('.').str[0]
        n = n+1       
        l.append(data)
        print('' + str(n) + '个表格已提取')
data_result = pd.concat(l)
data_result.to_excel('D:/ty/data_result.xls',index=0)
t2 = time.time()
t = t2 - t1
t = round(t,2)
print('用时' + str(t) + '')
print('完成!')

  

猜你喜欢

转载自www.cnblogs.com/jianchiai/p/10897366.html