【发布时间】:2018-08-17 05:01:37
【问题描述】:
我在一个文件夹中有大量文件(大约 200 万个文件),我想将每 50 个文件合并为一个。下面的代码将所有内容合二为一。我无法想出一种方法将每 50 个文件合并为一个文件,并确保任何超过 50 的数字也合并为一个文件。例如,如果文件数为 2,000,034,那么我最终会得到许多文件,其中包含 50 个组合文件,一个文件包含最后 34 个文件。
from glob import iglob
import shutil
import os
PATH = r'C:\Test'
destination = open('allcontents.sh', 'wb')
for file in iglob(os.path.join(PATH, '*.sh')):
shutil.copyfileobj(open(file, 'rb'), destination)
destination.close()
【问题讨论】: