我有一个包含1,199个CSV文件的文件夹。这些文件的形式都是“BCx_mmyyPPO.csv'其中x.isin([6, 51, 55, 56, 57, 60, 200, 240, 269, 316, 340, 415])
和mmyy
是2位数月份,后跟2位数年份。
该文件夹的片段如下:
我已经编写了以下Python 3代码,将所有1,199个文件整理成一个大型CSV文件:
import glob
import os
import shutil
path = r'path/to/files'
allFiles = glob.glob(path + '/*.csv')
with open('PPO.csv', 'wb') as outfile:
for i, fname in enumerate(allFiles):
with open(fname, 'rb') as infile:
if i != 0:
infile.readline()
shutil.copyfileobj(infile, outfile)
打印步骤在功能上是不必要的,但却是我想要弄清楚的东西。 enumerate()
用什么逻辑来选择项目的顺序。我无法弄清楚它是如何/为什么选择BC56_0608PPO.csv'作为元素0?似乎没有任何押韵或理由,但它有问题。我需要第一个文件是' BCx_mm16PPO.csv'或者' BCx_mm17PPO.csv'。
我对其他任何有这个问题的搜索都很短暂。我可能看起来不正确。谢谢你的帮助。
答案 0 :(得分:1)