# Step-by-step: computing an average (part db20)

Медленный разбор помогает понять код, а не просто скопировать его.

## Задача

Найти среднее арифметическое списка чисел и разобрать, что делать с пустым списком.

## Решение

```python
def average(arr: list[float]) -> float:
    if not arr:
        raise ValueError("пустой список не имеет среднего")
    return sum(arr) / len(arr)


print(average([2, 4, 6, 8]))
```

## Как это работает

Сумма элементов делится на их количество. Отдельно обрабатывается пустой список: деление на ноль недопустимо, поэтому выбрасывается понятная ошибка.

## Пример работы

```text
5.0
```

## Сложность

O(n) по времени, O(1) по памяти.


## Разбор по шагам

1. **Шаг 1. Входные данные.** Проверяем, что приходит в функцию, и какие значения считаются корректными.
2. **Шаг 2. Основной цикл.** Именно здесь происходит вся работа; следим за изменениями переменных на каждой итерации.
3. **Шаг 3. Результат.** Убеждаемся, что возвращаемое значение соответствует условию задачи, включая крайние случаи.

Когда каждый шаг понятен, доработка решения перестаёт быть лотереей.

**Читайте также:**

[float](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [обрабатывается](https://privatebin.devol.it/?2cb85bbd40d11a76#Akxb8UTdPdemg63uJS43MjxcpNzAxMeB7LH1WpKfK1c8) · [выбрасывается](https://discuss.tchncs.de/post/65444899) · [корректными](https://jaflysilve.freeflarum.com/d/3973-3973-feride-ozdinc-porno) · [работы](https://kovacsnikolay56.wixsite.com/my-site-1/post/ay%C5%9Fen-%C3%A7elik-porno) · [следим](https://news-ctl-posts.hashnode.dev/solving-and-testing-anagram-checking-part-5a5d) · [Убеждаемся](https://articlescad.com/hanna-schmidt-sex-386409.html) · [лотереей](https://hansenanna1.wixsite.com/my-site-1/post/kitty-cute-forum-nude-pics-videos-leaked-onlyfans) · [недопустимо](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/united-kingdom-economic-growth-rate-f65bc5.pdf) · [Именно](https://ecency.com/@vojtechurban2724/dollcett-1376ad) · [Найти](https://juliamichel991.overblog.fr/2026/10/ya-mur-im-ek-porno.html) · [помогает](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [list[float](https://radicle.network/nodes/index.radicle.garden/rad%3Az2WgMTCiVzrLZe1NfxmXRHEwjUXkC/issues/afdfce49f45207f0eab65decf81743a13c52deb7) · [поэтому](https://rentry.co/naked-nude-contest-164166) · [python](https://articlescad.com/bokep-indo-hasil-buruan-satu-malam-langsung-eksekusi-di-kama-385843.html) · [функцию](https://articlescad.com/minami-airi-386432.html) · [Сумма](https://archive41896.mataroa.blog/blog/mimi-r34-typh-furry-nsfw-ai-character-gallery/) · [какие](https://gall.dcinside.com/mgallery/board/view/?id=thekpop&no=64458) · [raise](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-415bb3.pdf) · [Проверяем](https://kappa.lol/uPGDQ8) · [имеет](https://blogfreely.net/catherine-vasilyev70/marinabonaa-exclusive-adult-photo-gallery-and-videos) · [average(arr](https://portfolio75615.mataroa.blog/blog/instagram-viral-mms-porn-gallery-leaked-videos-of-influencers/) · [элементов](https://paper.wf/ineshoffmann76log/ece-ronay-pornosu) · [случаи](https://cryptoradar.com/exchanges/bitstamp) · [количество](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/popular-country-music-festivals-44f9f0.pdf) · [Отдельно](https://radicle.network/nodes/seed.pipapo.org/rad%3Az4KvwYGA5oWwpkUjKAaawKgVsZ6U4/issues/44019565b48647cef4c438cb5c2aac4400c81d53) · [значение](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/bokep-artis-cina-d5105e.pdf) · [len(arr](https://artofhosting.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/yaorenneko-1a2f57.pdf) · [доработка](https://j0.pics/emmaclarkee+only+fans?f=linkcentre) · [Основной](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da)

