Sounded like a perfect job for iterating through lists in Python (with which I've been fiddling), so I slapped something together:
From a list of 25 values (.01 through 100uF range):
Series combinations: 325
Parallel combinations: 314
Python source:
E6 = [100,150,220,330,470,680]
E12 = [100,120,150,180,220,270,330,390,470,560,680,820]
capuf = [.01,.015,.022,.033,.047,.068,.1,.15,.22,.33,.47,.68,1.0,1.5,2.2,3.3,4.7,6.8,10.0,15.0,22.0,33.0,47.0,68.0,100.0]
#rc = list()
#fc = list()
snewcap = list()
pnewcap = list()
for cap1 in capuf:
for cap2 in capuf:
scap = 1/((1/cap1)+(1/cap2))
pcap = cap1+cap2
snewcap.append(scap)
pnewcap.append(pcap)
#ensure no duplicates via set()
snewcap = set(snewcap)
pnewcap = set(pnewcap)
#for cap in pnewcap:
# for res in E6:
# rcv = res * cap
# rc.append(rcv)
#rc = set(rc)
#for rcv in rc:
# fc.append(1/rcv)
#fc = set(fc)
print('Capacitor Values used (uF): ')
print(capuf)
# print('E6 Values used (ohms): ')
# print E6
# print('\n')
print 'Series combinations: ' + str(len(snewcap))
print(snewcap)
print('\n')
print 'Parallel combinations: ' + str(len(pnewcap))
print(pnewcap)
# print('\n')
# print 'Fc Values: '+ str(len(fc))
# print(fc)