Python IndexError: слишком много индексов

Я уже искал похожие вопросы, но не нашел решения. Впереди я понятия не имею от Python. Я только что получил скрипт, который теоретически должен работать и строить график с некоторыми точечными данными, но я получаю эту ошибку:

Traceback (most recent call last):
File "C:\***\create_plot.py", line 38, in <module>
formatter.create_plot()
File "C:\***\CPI_Plotter.py", line 54, in create_plot
plot(line[:, 0], line[:, 1], styles[name[0]%7], label=name[1])
IndexError: too many indices

Соответствующий код здесь:

def create_plot(self):
    """
        Plot the different data sets 
    """
    styles = ['o', 's', '^', 'v', 'D', '1', '+']

    for name, line in zip(enumerate(self.labels), self.plot_data):
        if name[1][-4:] == '.csv':
            plot(line[:, 0], line[:, 1], label='XNS Simulation')
            styles.insert(name[0],'')
        else:
            plot(line[:, 0], line[:, 1], styles[name[0]%7], label=name[1])

Спасибо за вашу помощь!


person j_d    schedule 12.05.2014    source источник


Ответы (2)


Вы не можете использовать запятые при нарезке в python. Что должна делать эта строка?

plot(line[:, 0], line[:, 1], label='XNS Simulation')
person Dmitry Loparev    schedule 12.05.2014
comment
Насколько я понимаю код, это должно называть график и различные данные точек, показанные на графике. - person j_d; 12.05.2014
comment
можете ли вы показать пример self.labels и self.plot_data? - person Dmitry Loparev; 12.05.2014
comment
Я провел несколько тестов, и скрипт отлично работает на Mac OS. Так что это должна быть ошибка с окнами или, точнее, что-то в скрипте не работает на виндовс. Может быть, это связано с файловой системой Windows?! - person j_d; 21.05.2014

Я решил проблему. Как уже было сказано, я думаю, что это была проблема с файловой системой Windows или что-то в этом роде. В Mac OS все работало нормально. Для запуска на машине с Windows я изменил следующую команду

infile = open(filepath, "r")

в

infile = open(filepath, "rb")

Таким образом, входной файл/файлы открываются в двоичном режиме, и скрипт работает нормально.

person j_d    schedule 21.05.2014