Python IndexError для нарезки массива - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть массив, который я хотел бы взять часть каждого элемента массива.

id = [000222000,000333000,000444000]

id2 = [222,333,444]

Для того, чтобы получить массив id2, я использую для l oop как следующим образом:

id2 = [i[3:5] for i in id]

Однако я получаю IndexError: неверный индекс для скалярной переменной. Я не понимаю, почему я получаю эту ошибку и как ее преодолеть? И это тот же принцип, если у меня есть массив строк вместо чисел?

Ответы [ 2 ]

2 голосов
/ 28 апреля 2020

Вы пытаетесь нарезать целые числа, что на данный момент невозможно в python 3.x

PS

-Не рекомендуется называть идентификатор списка так как это используемая функция в python.
-Попробуйте изменить все на Строки, если вы хотите нарезать .. + измените его с [3: 5] на [3: 6], так как он не включает последний индекс , поэтому вы выбираете только две цифры, а не 3, как я полагаю, вы хотите ..
- Невозможно иметь начальные нули в десятичной системе счисления в python.

1 голос
/ 28 апреля 2020

Проблема в том, что вы не можете нарезать числа в python. Если вы хотите нарезать элементы, вы можете привести все к строке, нарезать их, а затем привести все обратно к целому числу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...