Корзина товаров со счётчиком каждой позиции

Работа со словарями

В этой статье мы используем словарь для хранения товаров в корзине пользователя с учётом количества единиц каждого товара в корзине.

Создаём переменные

Обратите внимание на начальное значение переменной: {} — это пустой словарь.

Создадим также переменную для хранения добавляемого товара:

Цепочка для добавления товара в корзину

Ждём, пока пользователь выберет товар
Сохраняем его ответ в переменную %товар%
Ждём, когда пользователь укажет число единиц товара
%корзина%[%товар%] = %корзина%.get(%товар%, 0) + int(%сообщение%)

Здесь мы берём старое значение для указанного товара (или 0, если товара в корзине нет) и прибавляем к нему указанное пользователем значение. Так как тип переменной %сообщение% — Строка, то сначала необходимо преобразовать значение переменной к числу с помощью функции int().

Отправляем пользователю текущее содержимое корзины
{{ %корзина% | pretty }}

Цепочка для удаления товара

Ждём ответа пользователя
Удаляем ключ со значением из переменной %сообщение% из словаря %корзина%
del %корзина%[%сообщение%]
Выводим пользователю текущее содержимое корзины
{{ %корзина% | pretty }}

Тестируем

Last updated

Was this helpful?