嵌套的for循环内的If语句未执行。相反,代码实际上会忽略它,并打印x_1,x_2,x_3,x_4,x_5,x_6和x_7的所有可能组合,而不是if语句指定的组合。
我尝试避免完全使用zip使用嵌套的for循环,但这只查看x_1,x_2,x_3,x_4,x_5,x_6和x_7的组合,其中x_1 == x_2 == x_3 == x_4 == x_5 == x_6 == x_7。我也尝试过将if语句放置在各个位置,但是每次,代码都会忽略该语句。
for a in range(-5,6):
for b in range(-5,6):
for c in range(-5,6):
for d in range(-5,6):
for e in range(-5,6):
for f in range(-5,6):
for g in range(-5,6):
for x_1 in range(-5,6):
for x_2 in range(-5,6):
for x_3 in range(-5,6):
for x_4 in range(-5,6):
for x_5 in range(-5,6):
for x_6 in range(-5,6):
for x_7 in range(-5,6):
if a*x_1 + b*x_2 + c*x_3 + d*x_4 + e*x_5 + f*x_6 + g*x_7 == 7 and x_1^2 + x_2^2 + x_3^2 + x_4^2 + x_5^2 + x_6^2 + x_7^2 == 7:
print x_1, x_2, x_3, x_4, x_5, x_6, x_7
print "DONE"
它不应输出x_1,x_2,x_3,x_4,x_5,x_6和x_7的每个单独组合,因为它不会输出。它仅应输出例如1,1,1,1,1,1,1,1-这是x_1,x_2,x_3,x_4,x_5,x_6和x_7的组合,以使所有平方之和七个变量中的7个等于7并且a x_1 + b x_2 + c x_3 + d x_4 + e x_5 + f x_6 + g *对于某些a,b,c,d,e,f和g,x_7等于7,每个值都在range(-5,6)范围内的任何数字(特别是,在此示例中,这7个字母变量中的每个变量均等于1)。 x_1,x_2,...,x_7的全部7个也不必相等。