我有一个名为ModelsProduct的函数,在该函数中,我生成“+/-”和“a、b、c、d、e”的所有可能组合。在下面的代码中
modelsStepOne选择+/-
modelsstep2选择列表i-ea的第一个值
modelsStepThree选择列表i-e的第一个值('a','a')
modelsStepFour选择列表i-e的第一个值('d','d')
modelsStepFive选择列表i-e的第一个值('e','e')
它将[+,+,+,+,+,+,+,+,+,+,a,a,a,d,d,e,e]组合起来,并对所有可能的组合进行迭代。你知道吗
以下是打印时的输出。你知道吗
print (modelsOne[0])
print (modelsOne[1])
(“+”、“+”、“+”、“+”、“+”、“+”、“+”、“+”、“+”、“a”、“a”、“d”、“d”、“e”、“e”)
(“+”、“+”、“+”、“+”、“+”、“+”、“+”、“+”、“+”、“a”、“a”、“d”、“e”、“e”)
问题 如何在所有可能的组合中找到一个特定的索引值,例如可能的组合[+,-,+,+,+,+,+,+,-,-,a,a,b,c,c,e,c]的索引值是多少?
以下是生成所有可能组合的代码
def ModelsProduct(modelsOne, modelsTwo, modelsThree, modelsFour,modelsFive):
modelsStepOne = list(product("+-",repeat = 8)) ## It gives total 12288 model combinations
modelsStepThree = [('a','a'),('a','b'),('a','c'),('a','d'),('a','e'),('b','b'),('b','c'),('b','d'),('b','e'),('c','c'),('c','d'),('c','e')]
modelsStepFour = [('d','d'),('d','e')]
modelsStepFive = [('e','e')]
#produce modelsOne
modelsStepTwo = [('a',),('b',)]
for one in modelsStepOne:
for two in modelsStepTwo:
for three in modelsStepThree:
for four in modelsStepFour:
for five in modelsStepFive:
modelsOne.append(one+two+three+four+five)
#produce modelsTwo
modelsStepTwo = [('a',),('b',)]
for one in modelsStepOne:
for two in modelsStepTwo:
for three in modelsStepThree:
for four in modelsStepFour:
for five in modelsStepFive:
modelsTwo.append(one+two+three+four+five)
#produce modelsThree
modelsStepTwo = [('a',),('b',)]
for one in modelsStepOne:
for two in modelsStepTwo:
for three in modelsStepThree:
for four in modelsStepFour:
for five in modelsStepFive:
modelsThree.append(one+two+three+four+five)
#ModelsFour
modelsStepTwo = [('a',),('d',)]
for one in modelsStepOne:
for two in modelsStepTwo:
for three in modelsStepThree:
for four in modelsStepFour:
for five in modelsStepFive:
modelsFour.append(one+two+three+four+five)
#ModelsFive
modelsStepTwo = [('a',),('e',)]
for one in modelsStepOne:
for two in modelsStepTwo:
for three in modelsStepThree:
for four in modelsStepFour:
for five in modelsStepFive:
modelsFive.append(one+two+three+four+five)
return modelsOne, modelsTwo, modelsThree, modelsFour, modelsFive
modelsOne, modelsTwo,modelsThree, modelsFour,modelsFive = ModelsProduct(modelsOne, modelsTwo, modelsThree, modelsFour, modelsFive)
方法index()返回obj出现的列表中的索引。此方法返回找到的对象的索引,否则引发异常,指示找不到该值。你知道吗
示例:
上述问题中讨论的问题可以是
输出:
相关问题 更多 >
编程相关推荐