Почему во многих статьях к типам данных Python относят списки, кортежи, множества и словари, ведь это структуры данных?
Неоднократно встречал статьи, посвященные типам данных в Python, в которых помимо строк, чисел, булевых значений, байтовых строк, None-type дальше по списку идут кортежи, списки, словари, множества. Почему это встречается повсеместно, ведь кортежи, списки, множества и словари это структуры данных, а не типы?
Roman Kitaev, я, конечно, новичок в программировании, но как мне кажется, разница в том, что есть типы данных (разновидности: строки, числа, булевы значения, None-type, байтовые строки), а есть способы их хранения (объединения) - структуры данных: словари, списки, кортежи, множества и так далее.
Ведь тот же массив может содержать в себе хоть строки, хоть числа, да хоть бы и другие массивы, а, например, тип int содержит в себе только целое число, на то он и тип.
Разве это не так?
whoareyoutofuckinglecture, любой тип данных — это структура. Даже твой int — это структура. И очень сложная для понимания, потому что это далеко не int в каком-нибудь Си. Структура — это больше про способ хранения и внутренности, тип — про интерфейс. Но обычно они взаимозаменяемы.
И почему бы, например, тип не мог бы хранить другие типы? Твоё разделение называется "примитивные типы" и "коллекции". И всё это — типы данных.
Roman Kitaev, спасибо! Стало, в целом, понятнее. Но хочется глубже разобраться в этой теме, т.к. пока что полного понимания у меня нет.
В данный момент я дочитываю "Грокаем алгоритмы". К сожалению, в этой книге многие вещи рассматриваются очень поверхностно. Могли бы вы посоветовать хорошую и понятную книгу по углубленному изучению алгоритмов и структур данных, за которую стоит взяться после "Грокаем алгоритмы"?
P.S. В принципе, я уже нашёл другие темы на Тостере, в которых люди спрашивают совета по изучению алгоритмов, так что, вопрос про книгу не особо актуален.
Хотя всё-таки буду благодарен за рекомендацию хорошей литературы по алгоритмам, информация лишней не бывает.
Нет, не джавист. Просто новичок в программировании.
Сейчас занимаюсь изучением алгоритмов и структур данных, поэтому возник этот вопрос.
Спасибо за статью, ознакомлюсь. Очень хочется разобраться в этом вопросе.
нужно 2-3 языка, чтобы понять как вроде одно и то же описывают разными понятиями - вот в Го тоже отличия, но думать об этом не нужно - нужно учиться читать код