2015-07-02 2 views
0

В настоящее время добавляется целое число, проанализированное из имени файла в массив, когда я перебираю все файлы в каталоге. Я продолжаю получать индекс индекса вне диапазона. Анализировать Формат: LOG-rank-2-die-30-delay-7000000-.txtPython list index out of range issue

for filenamelogs in sorted(os.listdir('test_log_data/%s' %(directory_name))): 
     delay_times.append(filenamelogs.split('-')[6]) 
     print delay_times 

Массив Добавляя данные, которые я хочу на каждом проходе и даже заканчивает присоединяет требуется все данные, но я получаю этот индексный вопрос. Что я не вижу?

['7000000'] 
['7000000', '5000000'] 
Traceback (most recent call last): 
    File "testv2.py", line 478, in <module> 
    format_overall_stats(dir_name, workbook_file_name, 3) 
    File "testv2.py", line 202, in format_overall_stats 
    delay_times.append(filenamelogs.split('-')[6]) 
IndexError: list index out of range 
+0

Некоторые из ваших '' 'filenamelogs''' не имеют семи элементов при расколе? Поместите вокруг него блок try/except и напечатайте оскорбительные * журналы * в пакете '' 'except''', чтобы узнать, что происходит. – wwii

+0

Хм, все они (на моих глазах). Хорошо, но я попробую. – Ryan

+0

Похоже, ваши 'filenamelogs' не имеют * atleast * 7 столбцов, которые вы предполагаете, что они делают. Отсюда ошибка. Если вы выполните 'print filenamelogs.split ('-')' - вы бы знали, сколько столбцов – karthikr

ответ

0

Благодаря wwii, я забыл, что там был файл, не соответствующий синтаксису синтаксического анализа, который я закодировал.