И ещё такая рекомендация. Раздели задачу на части. Выдели самую главную часть и сначала реши её. Потом достраивай решение. Каждый из этих шагов делай отдельно в интерактивной оболочке типа IDLE.
Что я рекомендую на примере той твоей задачи. Сразу определи, что в ней самое главное? Это посчитать средний уровень осадков. Как его найти? Взять сумму всех осадков и разделить на количество наблюдений. Назови переменные нормальным образом и собери формулу. Проверь в IDLE. perc_av = perc_total / month_total (1).
(2) откуда взять perc_total? Как накапливаемую сумму значений. Где взять month_total? По тексту задачи, предполагается ввести количество лет, значит month_total = years_total * 12.
(3) как получить от пользователя данные? Может ли пользователь ошибиться в одном вводе, когда будет вводить данные за 10 лет? Если он ошибётся, что будет с программой? Предположим, что предполагается на каждом этапе ввод целого числа. Целое число будет вводиться и для количества лет, и для количества осадков в данный месяц. Следовательно, это один и тот же код. Лучше оформить в виде функции.
(4) В задаче авторы хотят, чтобы ты использовал два вложенных цикла. Мне не ясно, зачем им нужны два цикла, если задача прекрасно решается линейным образом. Но они хотят от тебя два, значит сделай так. Внешний цикл год должен что-то менять? Нет (поэтому внешний цикл не нужен). Единственная польза от него, если ты будешь печатать подсказку пользователю "Введите данные за год 3". Внутренний цикл сделай с подсказкой "месяц 1: ". Соответственно, вспомни, как сделать цикл с нумерацией от 1 до 12 включительно. И накапливай данные для perc_total.