Промёрзшие кочки, брусника,
Смолистые запахи пней.
Мне кажется: новая книга
Раскрыта искателю мне.
Ведь вечер ветвист и клетчат.
Ах, вечер, как сон в Октябре,
И сосны, как жёлтые свечи
На Божьем лесном алтаре….
В этом стихотворении Николая Заболоцкого, написанного в 1921 году видно, как поэт показывает божественное единоначалие природы. Но тем, кто знает творчество Николая Алексеевича, может показаться, что автор в своих взглядах, выраженных в стихах, больше похож на атеиста. Николай Корнеевич Чуковский, знакомый с поэтом, так писал о нем в своей книге "Литературный воспоминания":
В наших рассуждениях и спорах он неизменно объявлял себя «материалистом» и «монистом». Под «монизмом» разумел он понятие, противоположное «дуализму», и отзывался о «дуализме» с презрением. «Дуализмом» он называл всякое противопоставление духовной жизни – материальной, всякое непонимание их тождества, полной слитности.
В более поздних стихах Заболоцкий отказывается от мысли о божественном совершенстве природы.
Я не ищу гармонии в природе.
Разумной соразмерности начал
Ни в недрах скал, ни в ясном небосводе
Я до сих пор, увы, не различал
вот что пишет о природе Заболоцкий в 1947 году.
Возможно, изменение мнения поэта о роли высших сил связано с событиями в его биографии. В 1938 году Заболоцкого арестовали и осудили по делу об антисоветской пропаганде. В лагерях и ссылке он провел 8 лет.
Мне показалось интересным с помощью Python математически проследить эволюцию философских взглядов поэта на его творческом пути.
Я решил разбить жизнь и творчество поэта на три периода. До ареста, лагерный период (1938–1946), и после "отсидки" до 1958 года. Я решил с помощью кода разделить весь корпус стихотворений поэта по количеству стихов и по годам их создания. Это нужно будет для анализа баланса мыслей автора по периодам.
poems = [p.strip() for p in text.split('\n\n') if p.strip()]Этот код делит текст по двойным переносам строк, предполагая, что каждое стихотворение отделено пустой строкой.
Получилось 6173 стихотворений.
Так не может быть, столько стихов Заболоцкий не написал или, во всяком случае, не опубликовал. Значит этот подход разбиения корпуса на годы не правильный. Очевидно split ('\n\n') не находит разделителей и считает каждую строку отдельным "стихотворением". Скорее всего, 6173 это общее число строк в корпусе, а не число стихов.
Я решил применить другой подход и разбил корпус по годам именно по наличию указания на год создания стихотворения.
parts = re.split(r'([<(]?19\d{2}[>)]?)', text)Метод не дает мне точного числа стихотворений в корпусе, потому что в одном и том же году может быть написано несколько стихотворений. Зато я получил точное разделение корпуса на стихи по годам их создания. Получилось 240, это правдоподобное число.
Далее я создал ручной лексикон, чтобы увидеть, каким словами поэт выражает свое отношение к природе. Технократические слова я взял из поэмы "Торжество земледелия" и слова одушевления природы взял из стихотворения "Вечер на Оке".
nature_words = {'природа', 'земля', 'лес', 'река', 'дерево', }
tech_words = {'атом', 'машина', 'турбина', 'энергия', 'разум', }Дальше я попробовал определить "одушевление" или "живую" природу.
def is_animated_nature(line):
words = set(re.findall(r'\b[а-яё]+\b', line.lower()))
if not (words & nature_words):
return False
if re.search(r'\b(по[её]т|зов[её]т|плачет|шепчет|бежит|танцует|смотрит|мыслит|качает|поёт|летит|вздыхает|радуется)\b', line.lower()):
return True
return FalseЯ искал глаголы действия от природы "река поёт", "ветер зовёт". Чтобы определить природу как субъект, а не объект.
Далее я установил тональность через RuSentiLex. Это словарь оценочных слов и выражений русского языка.
def load_rusentilex(filepath):
sentiment_dict = {}
with open(filepath, 'r', encoding='utf-8') as f:
for line in f:
line = line.strip()
if not line or line.startswith(('!', '#')):
continue
parts = [p.strip() for p in line.split(',', 4)]
if len(parts) < 4:
continue
_, _, lemma, sentiment = parts[0], parts[1], parts[2], parts[3]
if sentiment in ('positive', 'negative'):
score = 1 if sentiment == 'positive' else -1
lemma_norm = lemma.lower()
if lemma_norm not in sentiment_dict:
sentiment_dict[lemma_norm] = score
return sentiment_dictЧто получилось в результате
Период | Одушевление | Технократичность |
До лагеря | 0.006 | 0.193 |
Лагерный | 0.019 | 0.082 |
Послелагерный | 0.025 | 0.048 |

На первый взгляд получившиеся цифры малы. Но относительная динамика показывает изменение отношения поэта к природе. До лагеря технократичность стихов в 32 раза выше одушевления! После тюрьмы одушевление почти впятеро выше, чем до лагеря.
В ранних стихах Заболоцкого торжествует мысль о том что природа это материал для преобразования. Человек у него это "солдат", который "прогнал Предков" и "возвысился над природой, словно демон". По количеству технократических терминов в этом периоде пик научного пафоса.
В ссылке Заболоцкий теряет веру в технократию. Природа становится собеседником, хранителем памяти. Одушевление природы в стихах растёт, технократичность падает.
После отсидки у поэта происходит поворот от естествоиспытателя к язычнику, у него природа становится зеркалом души. «Техно‑пафос» стихов снижается, одушевление достигает максимума. Природа у Заболоцкого — не метафора, а онтология, только через неё человек постигает «множество диковин» мира.
