Подсчёт по условию одной строкой
Цикл со счётчиком, который умещается в sum.
Как обычно пишут
skolko = 0
for zakaz in zakazy:
if zakaz["сумма"] > 1000:
skolko += 1
Пять строк на одно действие.
Короче
skolko = sum(1 for z in zakazy if z["сумма"] > 1000)
Или ещё короче — потому что True в Python равно единице:
skolko = sum(z["сумма"] > 1000 for z in zakazy)
Вторая запись компактнее, но первая понятнее: в ней видно, что мы именно считаем. Выбирайте по тому, что читается.
Родственные записи
any(z["срочный"] for z in zakazy) # есть ли хоть один
all(z["оплачен"] for z in zakazy) # все ли
any и all останавливаются, как только ответ ясен: any — на
первом истинном, all — на первом ложном. На длинном списке это
заметно.
Помните про all([]) — он равен True. Про это есть отдельный
разбор.
Когда цикл лучше
Когда внутри не одно действие, а несколько: посчитать, запомнить номер, собрать список. Втискивать такое в одну строку не надо — краткость не цель.