我在一个文件夹中有30,000个文件。从0
开始到30000
。当结束编号高于10
时,我想以5000
间隔从头到尾阅读。我创建了以下代码,
startFile = 0
endFile = 5000
for k in range(startFile, endFile + 1):
execfile(read_path + str(k) + ".py")
此代码将我的文件0
读取到5000
。但是当endfile
大于5000
时,我需要以10为间隔进行阅读。因此,必须有2个条件,一个用于endfile
小于或等于5000
,它将读取0
到5000
,一个用于endfile
高于5000
程序将以10
的间隔读取。知道如何在python中编写它吗?
答案 0 :(得分:0)
您可以使用os.listdir;
找到目录中的文件数>>> import os
>>> n_files = len(os.listdir(read_path))
>>> n_files
74
一旦你这样做,你可以选择你的步长并通过给步数参数来处理每个第10个文件;
>>> startFile = 0
>>> endFile = 5000
>>> step = 1 if n_files <= endFile else 10
>>> for k in range(startFile, endFile + 1, step):
>>> execfile(read_path + str(k) + ".py")
参考range(开始,停止,步骤)参数。 Step是索引增量大小,如果将其设置为 n ,它将选择 n 第二个元素。
>>> [i for i in range(0, 100, 10)]
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]