Я следующий список:Список манипуляция экстракту значения больше, чем текущие и остальные значения индекса
elev = [0.0, 632.8, 629.9, 626.5, 623.7, 620.7, 620.7, 607.4, 603.2, 602.0, 606.6, 613.2, 608.4, 599.7, 583.6]
В идеале это должно быть в порядке убывания, но 602.0
меньше, чем следующие 3 значений (606.6,613.2,608.4)
и мне нужен счетчик этих значений каждый раз, когда возникает этот вопрос. Я пытаюсь вложенным для петель сосчитать эти значения со следующими:
l = len(et)
for i in xrange(1,l-1,1):
for j in xrange(1,l-1,1):
if (et[i] < et[j]):
print et[i]
Но вместо этого я получаю все значения больше, чем 602.0
. Как ограничить цикл, чтобы считать только эти 3 значения? Оцените любые предложения.
является первым элементом всегда равен нулю? – NinjaGaiden
Ваша запись 607.4 не соответствует порядку (613.2 и 608.4 больше), поэтому в последовательности вы получаете довольно много инверсий. Как вы хотите считать инверсии? Для 607.4 после него есть 2 больших значения; для 603,2 - 3; для 602,0 - 3; для 606.6, есть 2. Итак, вы должны получить 10 подсчитанных (10 значений напечатаны)? –
Я хочу сохранить последовательность. Только хотите отслеживать инверсию, которая сначала соответствует критериям 'et [i]
Ibe