Другие языки программирования и технологии

Списки в python это как тоже самое что и массив в javascript?

Списки отличаются от массивов тем, что данные в списках хранятся в памяти не последовательно, а там, где есть место. Для разных задач используются разные типы данных. Для связанных списков характерна быстрая вставка и медленное чтение, а для массивов - медленная вставка и быстро чтение. К примеру, в списке есть 50 элементов. Каждый элемент содержит ссылку на другой элемент. Это как в реальной жизни находить предмет по подсказкам - вы не сможете найти и прочитать сразу 25 подсказку, не найдя и не прочитав все подсказки до этого. Так работают списки. Для массивов, как я уже сказал, характерно быстрое чтение и медленная вставка. Есть в массиве 10 элементов и мы спокойно можем обратиться и прочитать 4-й, 6-й, 7-й элемент. Но данные массива в памяти хранятся определённой длины количества элементов. То есть, массив состоит из 15 элементов, и компьютеру нужно подыскать свободные 15 ячеек в памяти. Если захотим добавить ещё один элемент, то придётся искать уже другое место со свободными 16 ячейками. Читать данные в связанных списках можно только последовательно, начиная с первого. Если приводить примеры из реальной жизни, то связанный список можно использовать, к примеру, при отчёте о покупках и потраченных на них деньгах. Купили сегодня сушки, записали. Купили завтра молоко и яблоко - записали. И в конце месяца подсчитываем количество потраченных денег. Последовательно. Массив можно представить в виде пачки ручек. Пачка имеет 10 ячеек и 10 ручек в этих ячейках. Чтобы добавить ещё одну, одиннадцатую, придётся искать другую пачку, состоящую из 11-ти ячеек для ручек. Или, к примеру, пришли в кинотеатр компания из 5-ти друзей. Все уселись на один ряд на последовательные места (№3, 4, 5, 6, 7). Пришёл ещё один друг, который опоздал. Ему уже места нет, потому что на местах 1, 2 и 8, 9, 10 сидят уже другие люди. Поэтому вся компания встаёт и ищет ряд со свободными 6-ю местами.
Ергулан Оразов
Ергулан Оразов
8 679
Лучший ответ
Юрий Комаров У динамически расширяемого массива на практике вставка намного быстрее, чем у связанного списка.
Python представляет тебе четыре типа коллекций: List, Tuple, Set и Dictionary
Из всех четырех List представляет из себя сущность которая, по сути своей, является типичным массивом в любом другом ЯП: предоставляет изменяемую коллекцию данных, имеющую порядок и позволяющую хранить дубликаты значений.
Поэтому, да: List и массив в JS - на практике одно и то же.

Мужчина выше сказал, что списки - не массивы. И он прав, ибо связной список в программировании это совершенно другая сущность.
Однако, конкретно в Python List реализован как массив. То есть как ряд однотипных адресов в памяти, идущих подряд. Поэтому Python'овский List - 100% массив.
Vasja Leta
Vasja Leta
11 157
Kavkazec82-Az Ahmetov > List и массив в JS - на практике одно и то же.

Массивы в JS - это что-то среднее между массивом и ассоциативным массивом.

a = [];
a[0] = 3;
a[123456] = 8;

В JS это выполнится без ошибок и не приведёт к выделению памяти для 123457 элементов. Однако a.length будет равно 123457.
Нет, списки - это не массивы.
Алекс Дорс
Алекс Дорс
5 149
Данияр Садыков а что это тогда?