Пусть items = [0]. Какой результат даст bool(items)?

AЗначение False из-за наличия «ложного» элемента 0 внутри переданного списка
BОшибка TypeError при попытке вызвать bool() от объекта типа list напрямую
CЗначение True из-за непустого списка items, даже если внутри него лежит 0
DЗначение None из-за отсутствия однозначного булева значения для списочного объекта
Правильный ответ. Непустые контейнеры считаются истинными в булевом контексте.

Разбор

В булевом контексте (в if, while или при вызове bool()) контейнеры оцениваются по пустоте. Пустой список [] — это False, а непустой список [0] — это True, даже если внутри есть «ложное» значение 0.

Проверь себя · 1/3разбор после ответа
Вы пишете расчёт средней цены и хотите гарантированно получить значение с плавающей точкой, поэтому оборачиваете число в float(2). Какой тип будет у результата такого вызова?
Тренировать Python в Telegram

Ещё вопросы по теме «Синтаксис и типы данных»