Нашли ошибку?
Скачать чистый
мини-проект≈ 20 минупражнения: 0 из 6

Мини-проект: погода в Москве

Загрузить погоду за год из файла и ответить на вопросы — самый тёплый день и самая холодная ночь, средний перепад температур, градусы Фаренгейта, самый дождливый день.

Python запустится при первом выполнении

Всё, что было в модуле, — на одном наборе данных: погода в Москве за 2025 год из файла data/moscow_2025.csv (номер дня, минимальная и максимальная температура, осадки). Новых понятий нет: только загрузка, арифметика, итоги и типы.

Напоминание о файле:

[ ]Начало файла
import numpy as np

with open("data/moscow_2025.csv") as f:
    print(f.read()[:80])
Выводсохранённый · нажмите «Выполнить», чтобы получить свой
day,temp_min,temp_max,precip_mm
1,-9.9,-3.2,0.0
2,-9.7,-3.2,0.0
3,-9.0,-3.7,0.0

Шаг 1. Загрузка

[ ]Упражнение 1Три столбца решено

Загрузите три столбца в три массива: tmin — минимальные температуры (столбец 1), tmax — максимальные (столбец 2), precip — осадки (столбец 3).

tmin = ...
tmax = ...
precip = ...

Шаг 2. Рекорды года

Номер дня в году считают с 1 (1 января — день 1), а индексы массива — с 0. Поэтому номер дня — индекс плюс один.

[ ]Упражнение 2Самый тёплый день решено

Сохраните в warm_day номер самого тёплого дня года (по максимальной температуре, 1 января — день 1), а в warm_temp — его температуру.

warm_day = ...
warm_temp = ...

[ ]Упражнение 3Самая холодная ночь решено

Сохраните в cold_day номер дня с самой низкой минимальной температурой, а в cold_temp — эту температуру.

cold_day = ...
cold_temp = ...

Шаг 3. Перепад за сутки

[ ]Упражнение 4Средний перепад решено

Суточный перепад — разница между максимальной и минимальной температурой дня. Посчитайте средний перепад за год и сохраните в amp.

amp = ...

Шаг 4. Для американского коллеги

[ ]Упражнение 5Целые градусы Фаренгейта решено

Переведите максимальные температуры в градусы Фаренгейта (F = C × 9 / 5 + 32) и оставьте только целую часть — массив целого типа. Сохраните его в tmax_f.

tmax_f = ...

Шаг 5. Дождь

[ ]Упражнение 6Самый дождливый день решено

Сохраните в wet_day номер дня, когда выпало больше всего осадков, а в rain_avg — сколько миллиметров выпадало в среднем за день.

wet_day = ...
rain_avg = ...

Выводы

[ ]Год в цифрах
print("самый тёплый день:", warm_day, "—", warm_temp, "°C")
print("самая холодная ночь:", cold_day, "—", cold_temp, "°C")
print("средний перепад за сутки:", round(amp, 1), "°C")
print("осадков за год:", round(precip.sum()), "мм, больше всего — в день", wet_day)
Выводсохранённый · нажмите «Выполнить», чтобы получить свой
самый тёплый день: 197 — 27.2 °C
самая холодная ночь: 45 — -14.9 °C
средний перепад за сутки: 5.5 °C
осадков за год: 711 мм, больше всего — в день 223
Итог появится, когда решите все упражнения урока, — в нём ответы. Ячейку можно и выполнить.

Самый тёплый день — 197-й, 16 июля, самая холодная ночь — 45-я, 14 февраля. Для каждого ответа хватило одной строки, а весь год — это пара массивов по 365 чисел. В следующем модуле научимся брать из массива любые куски: отдельный месяц, выходные, каждый седьмой день.

Выводы с ответами появятся, когда решите все упражнения урока.

Подробнее в справочнике

Практика по модулю

Задачи по NumPy для самостоятельной практики появятся в разделе «Задачи → NumPy».

Нашли ошибку?