Как создать словарь

Создание словаря - объявление словаря

имя_словаря = {}

Как обнулить словарь

Обнуление - это ничто иное как объявление пустого словаря

имя_словаря = {}

Как получить значение словаря по ключу

Описание

имя[ключ] - получение элемента словаря по ключу

Примеры

Пример работы со словарем:

в данном конкретном случае идет обращение по ключу со значением a. То есть для того, чтобы получить значение словаря по конкретному ключу прописываем команду в формате: имя_словаря["ключ"]

Ответ:

На экран будет выведено

Пример кода для копирования

dicts = {"a": "11", "d": "privet"}
/*получение из словаря*/
aa = dicts["a"]

Как получить список ключей из словаря

Описание

dict_keys_to_array(data) - для получения списка ключей словаря data

Примеры

Пример: Получим список всех ключей словаря

Ответ:

Пример кода для копирования

v={"A1":"апельсин","A2":"абрикос","A3":"мандарин","A4":"яблоко","A5":"груша","A6":"киви","A7":"банан","A8":"персик"} key= dict_keys_to_array(v)

Как получить список значений из словаря

Описание

dict_values_to_array(data) - для получения списка значений из словаря data

Примеры

Пример:

Ответ:

Пример кода для копирования

v={"A1":"апельсин","A2":"абрикос","A3":"мандарин","A4":"яблоко","A5":"груша","A6":"киви","A7":"банан","A8":"персик"} value= dict_values_to_array(v)

Как получить значения из списка словарей по указанному ключу

Описание

get_values_by_key(data, key) - позволяет получить значения из списка словарей по указанному ключу. Возвращает список значений.

Примеры

Пример: Получим значения из списка словарей по ключу

Ответ:

Пример кода для копирования

data = [{"Товар": "Товар№1", "Цена": 1500}, {"Товар": "Товар№2", "Цена": 6000}]
key = "Товар"
result = get_values_by_key(data, key)

Как заменить значение в словаре

Описание

имя['ключ'] = значение - замена значения элемента словаря по заданному ключу. Если указан несуществующий ключ, то произойдет добавление нового элемента словаря

Примеры

Пример:

Для замены значения конкретного элемента массива пишем обращение к нему имя_массива[индекс] = значение или имя_словаря[ключ] = значение

Ответ:

Пример кода для копирования

dicts = {"a": "11", "d": "privet"}

/*Заменить в словаре*/
dicts['d'] = AAAAA

/*Добавить в словарь   dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

/*Заменить в словаре на число*/
dicts['a'] = int('555')

Как добавить значение в словарь

Описание

имя_словаря['ключ'] = 'значение' - добавление нового значения в словарь.

Если ключ ранее не существовал, то произойдет добавление пары ключ: значение, иначе - замена значения для указанного ключа

Примеры

Пример:

Результат:

Пример кода для копирования

/*Добавить в словарь   dicts['key'] = 'VVVVVVVVVVV'*/
dicts['m']=new

Как проверить наличие ключа в словаре

Описание

exist_key(mass, key) - для проверки наличия ключа в словаре.

Параметры:

mass - словарь

key - ключ для поиска.

Возвращаемое значение True или False, в зависимости найден ключ или нет.

Примеры

Пример использования:

Пример кода для копирования

s = {"1": 123, "2": 234, "q": {"w": "e"}} 
q = if(exist_key(s, 'q'), 'Найдено', 'Еще строка')

Как проверить позицию ключа в словаре

Описание

key_index(mass, key) - для проверки позиции ключа в словаре.

Параметры:
mass - словарь
key - ключ для поиска.

Позиция в словаре считается с 0. Таким образом первый элемент будет 0, второй элемент будет 1 и так далее.

Примеры

Пример использования:

Результат:

Пример кода для копирования

s = {"1": 123, "2": 234, "q": {"w": "e"}} 
q = key_index(s, 'q')

Как узнать количество элементов в словаре

Описание

arr_len(mass) - для определения длины словаря.

Параметр:
mass - словарь

Результат: Возвращает число - длину словаря.

Будьте внимательны при передаче параметра в функцию! Если вызвать функцию без параметров, вернет 0, если в параметрах не массив и не словарь, вернет -1.

Примеры

Пример использования

Ответ:

Пример кода для копирования

/словарь/ радуга = {"каждый":"красный","охотник":"оранжевый","желает":"желтый","знать":"зеленый","где":["бирюзовый","светло-голубой", "темно-голубой"],"сидит":"синий","фазан":"фиолетовый"}

dlina=arr_len(радуга)

Как удалить элемент из словаря

По индексу или ключу

del(mass, key) - для удаления элемента из массива по индексу или из словаря по ключу. Принимает два параметра: массив/словарь, индекс/ключ, по которому будет удаление. Возвращает измененный словарь или массив, исходную строку не меняет.

Пример со словарем:

Пример с массивом:

Если в качестве значений массива или словаря используются числа, то для удаления элемента пользуйтесь функцией remove()

Как перевести словарь в человекочитаемый текст

Описание

humanize(dict, delimiter, from_i, to_i)

Параметры:

dict - имя словаря
delimiter - разделитель между строками
from_i - индекс элемента, с которого начинать вывод (нумерация с 0)
to_i - индекс элемента, до которого выводить данные (не включительно)

Примеры

Разберем на примере:

Пример кода для копирования

dict = {"[id146467928|Дмитрий]":"6","[id145255525|Матвей]":"20"}
r = humanize(dict, ': ')

Для сортировки словарей

sort() | sort_by_value()

Описание

Сортировка словаря

sort(dict, b) - сортирует массив по значению, а словарь по ключу

Параметры:

! dict- словарь

b - направление сортировки (False - по возрастанию (по умолчанию), True - по убыванию)

Сортировка словаря по значению

sort_by_value(dict, b) - сортировка словаря по значениям.

Параметры:

! dict- словарь

b - направление сортировки (False - по возрастанию (по умолчанию), True - по убыванию)

Примеры

Пример сортировки массива по убыванию и словаря по возрастанию:

Сортируем словарь по значениям:

Перевод словаря в кнопки

tools_make_button_str_checker() | tools_check_user_input()

Описание

Перевод массива/словаря в кнопки

tools_make_button_str_checker(values_list, key, in_line, button_type)

Параметры:

! values_list - массив строк или словарей, данные которого будут использоваться для получения клавиатуры или нумерованного списка
key - ключ, по которому будет производиться выборка из массива словарей values_list
in_line - количество кнопок в строке (по умолчанию равен 1)
button_type - тип кнопок (по умолчанию reply-клавиатура).
Возможные значения: 0 - reply-клавиатура, 1 - inline-клавиатура ( кнопки в тексте)

Результат исполнения функции - словарь вида:

{"numbered_list":"1. Футболки\n2. Шорты\n3. Носки\n4. Кепки\n","buttons":[{"type":"inline","text":"Футболки","line":0,"index_in_line":0},{"type":"inline","text":"Шорты","line":0,"index_in_line":1},{"type":"inline","text":"Носки","line":1,"index_in_line":0},{"type":"inline","text":"Кепки","line":1,"index_in_line":1}],"checker":"Футболки;1;Шорты;2;Носки;3;Кепки;4;"}

Значения словаря в дальнейшем можно подставлять в поля в конструкторе:

Получение значения словаря на основе выбора клиента

tools_check_user_input(values_list, user_input, key, return_key)

Параметры:

! values_list - массив строк или словарей, данные которого будут использоваться для получения клавиатуры или нумерованного списка
Пример словаря: [{"text":"Футболки","price":100},{"text":"Шорты","price":150},{"text":"Носки","price":20},{"text":"Кепки","price":50}]
! user_input - значение введенное пользователем из числа значений, полученных из словаря values_list
Пример значения: Кепки
key - ключ, по которому будет производиться выборка из массива словарей values_list
Пример ключа: text
return_key - возвращаемое значение для заданного ключа key из словаря values_list
Пример возвращаемого значения: price

Пример

Разберем использование функции на примере реализации корзины товаров:

1.Задаем массив и разбираем его на нумерованный список, кнопки и список возможных значений (для мессенджеров без кнопок) при помощи функции tools_make_button_str_checker()

2.Используем полученные значения buttons, numbered_list для организации возможности выбора товара:

3.А список возможных значений checker используем для проверки вводимых клиентом данных:

4.Осталось вывести клиенту цену выбранного товара. Это удобно сделать при помощи функции tools_check_user_input()

Пример кода для копирования

list = [{"text":"Футболки","price":100},{"text":"Шорты","price":150},{"text":"Носки","price":20},{"text":"Кепки","price":50}]
res = tools_make_button_str_checker(list, "text", "2", "1")
numbered_list = res['numbered_list']
buttons = res['buttons']
checker = res['checker']

res_check = tools_check_user_input(list, user_input, 'text', 'price')