One of the ways to do this is to @Williamteixeira said, it would be you slice the sequencia
.
Some ways you can do this:
min(z[0:2])
min(z[:2])
min(z[-5:2]) #isso só ira funcionar se a lista tiver 5 elementos, por isso não é recomendavel
By doing this the code will look like this:
z = [-4, -1, 0, 0, 0]
F1 = [ 9, 1, 1, 0, 18]
F2 = [ 3, 1, 0, 1, 12]
#Pega a posição do menor valor das listas
n_min_z = min(z[:2])#ou alguma das outras opções
n_min_F1 = min(F1[:2])#ou alguma das outras opções
n_min_F2 = min(F2[:2])#ou alguma das outras
#Guarda a posição em uma variavel
posZ = z.index(n_min_z)
posF1 = F1.index(n_min_F1)
posF2 = F2.index(n_min_F2)
print(posZ)
print(posF1)
print(posF2)
But another way you can do that is with a if
, only what code will get bigger:
z = [-4, -1, 0, 0, 0]
F1 = [ 9, 1, 1, 0, 18]
F2 = [ 3, 1, 0, 1, 12]
#Pega a posição do menor valor das listas
if z[0] > z[1]:
n_min_z = z[0]
else:
n_min_z = z[1]
if F1[0] > F1[1]:
n_min_F1 = F1[0]
else:
n_min_F1 = F1[1]
if F2[0] > F2[1]:
n_min_F2 = F2[0]
else:
n_min_F2 = F2[1]
#Guarda a posição em uma variavel
posZ = z.index(n_min_z)
posF1 = F1.index(n_min_F1)
posF2 = F2.index(n_min_F2)
print(posZ)
print(posF1)
print(posF2)
Hello, you can sort the list so that the lowest value is always on Indice 0
– William Teixeira
and that the list has to be in that order is only I can get the lowest value of the indices 0 or 1
– lucas
I understood better now, make a slice:
min(z[:2])
this will compare only the first two indices. Then you repeat for the others.– William Teixeira
Thank you, It worked!
– lucas
@Williamteixeira If you want to copy the part I mention you and post as answer, you can copy, I withdraw from my reply :)
– Codigo de Senior