Почему я получаю сообщение об ошибке «Остановить итерацию» и как это исправить?Python

Программы на Python
Anonymous
Почему я получаю сообщение об ошибке «Остановить итерацию» и как это исправить?

Сообщение Anonymous »

  • Я получаю ошибку StopIteration при запуске приведенного ниже кода. Я видел некоторые другие сообщения о переполнении стека с той же ошибкой, но не уверен, что они подходят для этого случая. Почему это происходит и как это исправить? Цель состоит в том, чтобы разбить столбец фрейма данных на фрагменты по n = 15 000.
  • Также я знаю последняя строка лишняя. Я прочитал что-то о переполнении стека, которое, похоже, предполагало, что часть next() должна быть в цикле for. Поможет ли это решить проблему StopIteration? И если да, то будет ли это цикл for отдельной функцией или я могу поместить его в код ниже? Я попробовал последнее, но безуспешно.
def chunks(lst, n):
"""Yield successive n-sized chunks from lst."""
for i in range(0, len(lst), n):
yield lst[i:i + n]

outputs = chunks(df['Delay Comment'] ,15000)
c15k,c30k,c45k,c60k,c75k,c90k,c105k,c120k,c135k,c150k,c165k,c180k,c195k,c210k,c225k,c240k,c255k,c270k,c285k,c300k,c315k,c330k = next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs)

Error: ---------------------------------------------------------------------------
StopIteration Traceback (most recent call last)
C:\Users\HECTOR~1.HER\AppData\Local\Temp/ipykernel_9116/1126382813.py in
5
6 outputs = chunks(df['Delay Comment'] ,15000)
----> 7 c15k,c30k,c45k,c60k,c75k,c90k,c105k,c120k,c135k,c150k,c165k,c180k,c195k,c210k,c225k,c240k,c255k,c270k,c285k,c300k,c315k,c330k = next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs), next(outputs)

StopIteration:


Подробнее здесь: https://stackoverflow.com/questions/707 ... i-fix-this

Вернуться в «Python»