Форум сайта python.su
Обыясните человеку - что являеться аналогом массива в питоне?
Офлайн
Списки
Офлайн
FerromanСкорее не списки а кортежи, массив традиционно не умеет менять длину, а аналог динамическому массиву - это как раз список
Списки
Офлайн
Скорее аналог вектору в С++ это списки. А аналог массиву наверное, как уже было сказано, - кортежи.
Офлайн
А можно использовать array из numpy.
Офлайн
существует и стандартный модуль array
Офлайн
кортежи не изменяемы.
в качестве массивов даже словари можно использовать. так что все ответы правильные.
просто питон – это не совсем си.
Офлайн
А почему сравнили с си :) ?
Не написал кортежи потому что они неизменяемые последовательности, а массивы - изменяемые. А отличие списков - только переменная длина (согласитесь, менее важное отличе чем у кортежей).
Хотя стоило уточнить.
Офлайн
В отличие от массивы, списки и кортежи могут содержут данны разного типа. Думаю, array.array - это най-более точний аналог. Говорят, что операций с array быстрее в разах, чем списки. У меня нет личние впечатлений так ли или нет.
Офлайн
В том-то и дело, что операций с array раз-два и обчелся. Все они относятся только к контейнеру - создать из разных форматов, преобразовать в другой, добавить/удалить элемент. И прирост скорости никого не интересует, да и нет его особо, потому что даже при итерации по array происходит преобразование внутреннего формата в питоновский тип. Выигрыш есть только по памяти.
Другое дело numpy/scipy, который предлагает еще и алгоритмы для работы со своими структурами.
Линейная алгебра, преобразования Фурье и проч. Вот он гораздо быстрее “просто питона”.
Офлайн