Извините, если это уже было задано; Я не мог найти вопрос, который был достаточно похож на мою, где я мог бы получить удовлетворительный ответ.Подсчет последовательных номеров в списке
Я довольно новичок в python (3.4.3). Я пытаюсь добавить элементы в пустой список, используя цикл for, сравнивая элементы другого списка со следующим элементом во втором списке (ужасное объяснение, я извиняюсь).
Вот мой код до сих пор:
random_list=[1,4,5,6,7,9,19,21,22,23,24]
def count_consec(random_list):
count=1
consec_list=[]
for i in listrand:
if listrand[i] == listrand[i+1]+1:
count+=1
else:
list.append(count)
return consec_list
В принципе, я хочу, чтобы добавить в список [] значения, которые представляют, как длина последовательных блоков чисел в random_list [].
Я ожидаю, что мой выход в этом случае выглядеть следующим образом:
[1,4,1,1,4]
Как и есть один единственное число, а затем 4 последовательных чисел, а затем одним единственным числом, за которым следует один единственного числа, а затем 4 последовательных номера.
Я попытался это много различных способов, и я получил функцию для создания списка, но все элементы 1-х ...
Спасибо за вашу помощь!
'listrand' не определено – RomanPerekhrest
Добро пожаловать в StackOverflow. Прочтите и следуйте инструкциям по отправке в справочной документации. [Минимальный, полный, проверяемый пример] (http://stackoverflow.com/help/mcve) применим здесь. Мы не можем эффективно помочь вам, пока вы не разместите свой код MCVE и не сможете точно описать проблему. Ваш код не компилируется. После исправления имени параметра (random_list to listrand) он умирает за неправильное использование ** append **. Это не MCVE. – Prune
Я все еще запутался в выходе = ( –