Изучаем структуры данных с Python. Часть 1
 
			Для программирования и информатики структуры данных являются основным предметом. Он используется почти во всех областях компьютерных наук. В данной серии статей я опишу структуры данных, которые имеют решающее значение для науки о данных и программирования, а также то, что означают структуры данных в целом.
Что же такое структуры данных?
В информатике структура данных - это формат организации, управления и хранения данных, который обеспечивает эффективный доступ и модификацию. Это структуры, которые могут хранить, организовывать и помогать, нам изменять множество данных.
Списки, словари и массивы - это простые структуры данных, присутствующие во всех языках программирования. Хотя их синтаксис варьируется, их логика остается неизменной, поэтому вы можете адаптировать примеры, которые мы будем проводить на Python, к таким языкам, как Java и C++.
Словари - Dictionaries, Карты - Map, Хэш-Таблицы - Hash Tables .
В Python словари предназначены для хранения произвольного количества данных, каждый со своими ключевыми словами. Типы Map также называются хэш-картами и таблицами поиска или ассоциативными массивами. Это облегчает организацию данных, связанных с определенным ключевым словом, и представляет их в более организованной форме. Например, словарь может хранить атрибуты (данные), такие как возраст, дата рождения, гороскоп на основе ключевого слова name.
data = { "Mark": 12, "Alice": 23, "David": 8, } 
data["Mark"]  
вывод: 12   
Вы также можете ввести фигурные скобки, чтобы они помещались в одну строку, но словари с большими данными будут путаться, поэтому лучше использовать отступы.
Orderdict, Defaultdict, Chainmap.
У нас есть словари с различными функциями. Хотя у каждого из них своя цель, я собрал их под одним названием, потому что они находятся в одной библиотеке. Вам нужна библиотека collections для доступа к этим структурам данных, поэтому не забудьте установить ее на свой компьютер. Как следует из названия, OrderedDict - это словарь, который не забывает порядок ваших ключей и действует соответственно.
import collections as cs  
dict1 = cs.OrderedDict(one=1,two=2) 
print(dict1)  
# Добавление новых данных
dict1["four" = 4] 
print(dict1)  
# вывод:  
([('one', 1), ('two', 2)]) ([('one', 1), ('two', 2), ('three', 3)]) 
Вы можете использовать defaultdict для подготовки сообщений, которые будут информировать вас, когда вы попытаетесь извлечь данные, которых нет в словарях. Подготовка сообщений об ошибках простым для вас способом может помочь на этапе отладки.
from collections import defaultdict
# Создадим функцию и передадим ее в качестве аргумента  
def error(): 
  return "Index Not Found"  
x = defaultdict(error)
# Создание 10 индексов и значений в словаре
for i in range(0,10): 
  x[i] = i  
# Попытка обращения к несуществующему индексу 
print(x[11])  
вывод:  Index Not Found  
Если у вас есть несколько словарей, можно превратить их в один с помощью Chainmap. Чаще всего используется со словарями.
from collections import ChainMap
dict1 = {"1": 1, "2": 2} 
dict2 = {"3": 3, "4": 4} 
main = ChainMap(dict1, dict2)  
print(main["3"] , main["1"]) 
вывод: 3 , 1    
Таким образом мы разобрали некоторые основные структуры данных, представленные в Python. При этом, имея представления об основных структурах данных, намного легче строить работающие алгоритмы.
- 
					Создано 13.07.2021 09:40:15  
- 
					 Михаил Русаков Михаил Русаков
 
			 
			 
		 
				 
			 
				 
				 
				 
				
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.