I am using ArcMap 10.7.
I have a multitude of shapefiles representing glacial lakes in different stages of their formation, each shapefile produced using a different climate model as basis. All results displayed looks something like this:

As can be seen, the models do not agree on the extent of the lake formation. The "green model" produced the largest lake extents, the "brown model" the smallest ones. I have used 15 models, each for 4 SSP scenarios and 8 timesteps (so all in all 480 shapefiles).
For each lake part in a given scenario and timestep, I now want to quantify the number of models agreeing on its formation. Using Intersect manually gives me only the areas where the models overlap without any information on how many overlap there. And, due to the number of shapefiles, it is not feasible. So far, I could use a number of for-loops (slow, I know, but I don't have a better idea) to go through every model, scenario and timestep and do the intersect like this:
for i in range(models):
for j in range(scenarios):
for i in range(timesteps):
shapelist = []
for shapefile in folder:
if shapefile.endswith(".shp"):
shape_location = os.path.join(folder, shapefile)
shapelist.append(shape_location)
arcpy.Intersect_analysis(in_features=shapelist,
out_feature_class=os.path.join(some_folder, "intersect.shp"))
But I'm stuck on how to determine the number of overlapping polygons for each lake. Is there another way to use Intersect, or another arcpy-related workflow that I could use?



