Py学习  »  Python

python:迭代移动文件夹

Winne Loo • 4 年前 • 117 次点击  

我有52k多个csv文件需要整理,我想通过python或其他途径找到一种有效的方法来整理。

目前我有这些文件夹,

2013年第一季度
2013年第二季度
2013年第三季度
2013年第四季度
2014年第一季度…

等等

在四分之一文件夹中,我有另一个文件夹:

xxxx20130101_000500_CSV
xxxx20130101_000500_XML格式
xxxx20130101_001000_CSV
xxxx20130101_001000_XML格式

等等……

在那个文件夹里我有文件:

xxxx20130101_000500_csv.csv
xxxx20130101_000500_xml.xml
xxxx20130101_001000_csv.csv
xxxx20130101_001000_xml.xml

分别是。

我想浏览所有的季度文件夹,只从每个子文件夹中提取.csv文件,并按它们各自的日期将它们组织到一个文件夹中。

所以在2013年第一季度的文件夹中,我希望

20130101年
20130102…

等等

在20130101文件夹中

xxxx20130101_000500_csv.csv
xxxx20130101_001000_csv.csv
xxxx20130101_001500_csv.csv

现在我有了python代码:

import shutil
import os

os.chdir('C:\\...\\Test')

 for f in os.listdir('MovingFolders'):
    folderName = f[-19:-11]

    if not os.path.exists(folderName):
        os.mkdir(folderName)
        shutil.copy(os.path.join('MovingFolders', f), folderName)
    else:
        shutil.copy(os.path.join('MovingFolders', f), folderName)

我对python还比较陌生,还在学习,所以我有点困惑。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46964
 
117 次点击  
文章 [ 1 ]  |  最新文章 4 年前
Akash Dutta
Reply   •   1 楼
Akash Dutta    5 年前

对于Python3.5及更高版本:

中有一个递归特性 glob 你可以用的。 你做的是 导入全局

在glob.glob上循环('root/**/*.csv',recursive=true)