Salebot.pro
Search
⌃K

Для работы с массивами и словарями

Больше функций для работы с массивами и словарями читайте в этой статье:
Для упрощения понимания какой набор функций доступен на тарифе вводим систему обозначений:
Доступно на Бесплатном тарифе
- доступно на Бесплатном тарифе
Доступно на Базовом тарифе
- доступно на Базовом тарифе
Доступно на тарифе Стандарт
- доступно на тарифе Стандарт
Доступно на трифе Премиум
- доступно на тарифе Премиум

Для сортировки массивов и словарей
Доступно на Бесплатном тарифе
Доступно на Базовом тарифе
Доступно на тарифе Стандарт
Доступно на трифе Премиум

sort() | sort_by_value()

Описание
Примеры
Пример кода для копирования
Видеоразбор
Сортировка массива или словаря
sort(mass, b) - сортирует массив по значению, а словарь по ключу
Параметры:
! mass - массив/словарь
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()
Пример использования функции tools_make_button_str_checker()
Реузльтат выполнения функции tools_make_button_str_checker()
2.Используем полученные значения buttons, numbered_list для организации возможности выбора товара:
Пример использования функции tools_make_button_str_checker()
3.А список возможных значений checker используем для проверки вводимых клиентом данных:
Пример использования функции tools_make_button_str_checker()
4.Осталось вывести клиенту цену выбранного товара. Это удобно сделать при помощи функции tools_check_user_input()
Пример использования функции 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')

Выборка данных из массива

array_slice()

Описание
Пример
Пример кода для копирования
array_slice(array, start_index, end_index)
Параметры:
! array - массив ! start_index - начало среза end_index - конец среза (по умолчанию до конца)
Давайте выберем из массива подмассив, начиная с 1го элемента:
Пример использования array_slice()
в res будет ["Шорты", "Носки", "Кепки"]
Еще один пример выборки подмассива, начиная с 0 до 2го элемента массива:
Пример использования array_slice()
в res будет ["Футболки", "Шорты"]
list = ["Футболки", "Шорты", "Носки", "Кепки"]
res = array_slice(list, 1)
res = array_slice(list, 0, 2)